00:00:00 --- log: started forth/04.10.25 00:02:58 --- quit: mur (Remote closed the connection) 00:03:09 --- quit: Raystm2 ("User pushed the X - because it's Xtra, baby") 00:03:37 --- join: mur (~mur@uiah.fi) joined #forth 00:20:11 --- join: mur_ (~mur@uiah.fi) joined #forth 00:31:37 --- quit: mur (Read error: 110 (Connection timed out)) 00:51:22 --- quit: Baughn (Read error: 60 (Operation timed out)) 00:52:09 --- nick: mur_ -> mur 00:54:35 --- quit: Robert (Remote closed the connection) 01:13:46 --- quit: mur (Remote closed the connection) 01:14:43 --- join: mur (~mur@kyberias.uiah.fi) joined #forth 01:33:40 --- join: Baughn (~svein@dhcp-22-38.stud.cs.uit.no) joined #forth 01:55:40 --- join: Robert__ (~pink@c-bf5a71d5.17-1-64736c10.cust.bredbandsbolaget.se) joined #forth 01:58:17 --- join: Baughn_ (~svein@sveinoa.stud.cs.uit.no) joined #forth 02:11:44 --- quit: I440r_ (Excess Flood) 02:11:44 --- quit: Baughn_ (Read error: 104 (Connection reset by peer)) 02:11:50 --- quit: Baughn (Read error: 110 (Connection timed out)) 02:11:56 --- join: I440r_ (mark4@216-110-82-59.gen.twtelecom.net) joined #forth 02:43:15 --- nick: Robert__ -> Robert 02:54:04 --- quit: Robert ("I'll be bak.") 03:18:26 --- part: Serg_penguin left #forth 03:22:26 --- join: ok (r@core-dc-2-178.dynamic-dialup.coretel.net) joined #forth 03:22:29 --- join: Robert (~pink@c-bf5a71d5.17-1-64736c10.cust.bredbandsbolaget.se) joined #forth 03:22:33 03:32:02 --- quit: warpzero (Read error: 104 (Connection reset by peer)) 03:35:40 --- join: warpzero (~warpzero@dsl.103.mt.onewest.net) joined #forth 04:07:55 --- join: mur_ (~mur@kyberias.uiah.fi) joined #forth 04:10:54 --- quit: mur (Read error: 60 (Operation timed out)) 04:29:40 --- join: crc (crc@77-pool1.ras11.nynyc-t.alerondial.net) joined #forth 04:43:34 --- join: mur (~mur@mgw2.uiah.fi) joined #forth 04:57:25 --- quit: mur_ (Read error: 110 (Connection timed out)) 04:57:59 --- join: Serg_penguin (~Miranda@212.34.52.140) joined #forth 05:33:11 --- join: Raystm2 (Rastm2@AC90BA38.ipt.aol.com) joined #forth 05:40:01 --- join: crc_ (crc@77-pool1.ras11.nynyc-t.alerondial.net) joined #forth 05:40:02 --- quit: crc (Read error: 104 (Connection reset by peer)) 05:40:14 --- nick: crc_ -> crc 05:44:18 --- quit: ok ("ircII EPIC4pre2 cLIeNUX. Can you say that?") 05:56:09 --- quit: mur (tolkien.freenode.net irc.freenode.net) 05:56:58 --- join: mur (~mur@mgw2.uiah.fi) joined #forth 06:02:06 --- quit: Robert ("JESUS IS WATCHING US FROM A UFO BEHIND TH... [Connection reset by divine intervention]") 06:02:45 --- quit: mur (tolkien.freenode.net irc.freenode.net) 06:03:08 --- join: mur (~mur@mgw2.uiah.fi) joined #forth 06:08:39 --- quit: crc ("Time for bed... Goodnight!") 06:37:54 --- quit: hefner ("another day begins") 06:53:14 --- quit: Serg_penguin ("Miranda IM! Smaller, Faster, Easier. http://miranda-im.org") 07:06:31 --- join: qFox (C00K13S@82-169-140-229-mx.xdsl.tiscali.nl) joined #forth 08:12:27 --- join: Robert___ (~pink@c-bf5a71d5.17-1-64736c10.cust.bredbandsbolaget.se) joined #forth 08:13:50 --- nick: Robert___ -> Robert 08:30:13 what was the word to change the sign of a number? 08:30:23 invert isnt what i mean 08:30:29 neg or - 08:30:37 neg isnt defined 08:30:42 negate ? 08:30:47 thassit 08:30:48 :) 08:30:52 couldnt think of it 08:30:53 :) 08:32:26 "neg" is so much shorter. 08:32:42 And I use it in my forths. 08:32:52 Not sure about isForth 08:33:50 neg isnt defined in win32forth 08:34:00 and i do feel its negate, even though neg feels more natural 08:34:23 Yeah, it's MUCH more natural 08:34:26 * Robert pets NASM 08:34:30 :p 08:34:30 You're natural. 09:05:34 and shift? :) 09:05:36 not rotate 09:05:51 oh it'll probably optimize / 09:14:52 Maybe. 09:15:03 But I wouldn't do that. 09:15:06 Looks so ugly! 09:16:15 what looks so ugly? 09:17:58 futhin: Something like... 4 / 09:18:23 8 4 / 09:18:29 . 2 ok 09:18:31 ? 09:20:40 I'm thinking about the run-time performance of / vs. bit shifting. :) 09:21:12 In a loop that's enough to notice, and even become much larger than Forth threading overhead. 09:22:18 you're saying that 2* and 2/ are much more efficient eh? 09:29:36 rshift doesnt rotate 09:29:41 wtf and just now it did :s 09:29:48 hate. 09:32:56 look at this ugly thing :p 09:32:57 : n>bbbb ( n -- b b b b ) dup 18 rshift swap over 18 lshift - dup 10 rshift swap over 10 lshift - dup 8 rshift swap over 8 lshift - ; 09:33:00 : bbbb>n ( b b b b -- n ) swap 8 lshift + swap 10 lshift + swap 18 lshift ; 09:33:17 (in hex) 09:36:00 although i'm convinced at least n>bbbb can be done better 09:36:16 it just looks redundant by looking at it 09:36:21 (not counting in factoring 09:36:23 ) 09:39:13 : rso ( n -- n n ) rshift swap over ; 09:39:13 : lsd ( n -- n n ) lshift - dup ; 09:39:13 : n>bbbb ( n -- b b b b ) dup 18 rso 18 lsd 10 rso 10 lsd 8 rso 8 lshift - ; 09:39:41 hm stacks arent correct 09:39:45 futhin: I am 09:41:01 : rso ( n n n -- b n b ) rshift tuck ; 09:41:01 : lsd ( n b n -- n n ) lshift - dup ; 09:42:05 : lps ( b a a a -- a b ) lshift + swap ; 09:42:05 : bbbb>n ( b b b b -- n ) swap 8 lsp 10 lsp 18 lshift ; 09:42:10 but anyways 09:50:27 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 10:13:45 --- join: michelp (~michel@67.136.151.64) joined #forth 10:14:22 got a standards question, if you define word A and then compile word A into word B and then redefine word A, does the execution semantics of word B change? 10:14:40 Usually not. 10:15:01 only with the indirectly threaded model 10:15:02 In fact, almost exclusively not. 10:15:04 i think... 10:15:16 (i luvs that model :D) 10:15:21 qFox: Well, depends.. there it's _possible_ to do it, but I think most Forths don't do that. 10:15:33 but is it in the standard or is it implementation defined? 10:15:37 well yeah, you could go and dig into it etc. 10:15:49 it really depends on the type of forth 10:16:01 I believe the standards either say that the behaviour is not changed, or they say nothing at all. 10:16:16 like i said, its normal for the indirectly threaded model, but very difficult (and not default behaviour) for any other model 10:16:20 as far as I can tell it says nothing at all ;( 10:16:35 just try if you're uncertain 10:16:38 michelp: You can probably rely on that it doesn't change. 10:17:10 michelp: It's like assuming that an "int" in C isn't 4-bit. It's not 100% sure, but... 10:17:16 : foo ." bar" ; : foobar foo ; : foo ." foo" ; 10:17:16 cool. Thanks. 10:17:19 I ask because I'm helping develop a Forth implementation on the Parrot VM. 10:17:37 Robert> i dont agree :( 10:17:39 What is Parrot? 10:17:48 qFox: Hm? 10:18:00 [19:18:19] like i said, its normal for the indirectly threaded model, but very difficult (and not default behaviour) for any other model 10:18:04 . 10:18:26 Is it really normal? 10:18:29 yes 10:18:38 A language agnostic VM that is the underlying basis of Perl 6. It's like the JVM or .NET. As of now it runs several languages including Perl, Python, Scheme, a few others, and a Forth protoype. 10:18:38 Is Parrot the vm in perl that runs python and other langs? 10:18:39 thats what indirectly threaded is all about 10:18:49 directly threaded compiles the words 10:18:59 qFox: I thought the default behaviour was to create a new header. 10:19:02 but indirectly compiles df's 10:19:09 eh? 10:19:11 michelp: Interesting. 10:19:29 directly goes straight to the data field when executing, while indirectly looks up the datafield in the header first 10:19:34 remember my forth? 10:19:51 I know how it works. 10:19:55 well then.. 10:19:56 :) 10:20:02 But that doesn't mean the default behaviour has to be like that. 10:20:12 i believe it is, for that model 10:20:15 Headers are usually not modified. 10:20:22 But rather replaced. 10:20:33 its not about the headers 10:20:52 its about redefining the word, replaces the .... oh 10:20:54 ehm 10:20:58 It is, because of the old header remains, the old word behaviour remains. 10:21:12 no wait. i was right. you cant be right. you... i... 10:21:22 damnit 10:21:22 :) 10:21:52 i was talking about something slightly different :( 10:22:23 michelp: so, what's the advantage over just defining a generic ABI on native bytecode? 10:22:29 michelp> he's correct :p default behaviour for any model is that it doesnt change 10:23:07 I'm sorry I don't quite get the question. 10:23:25 i was thinking about changing the data field target :p 10:23:56 thanks qFox. 10:24:25 Parrot should have been written in forth. If you try to impliment forth in parrot you do an injustice to the forth. 10:24:38 michelp: the "nice" thing about .net is that it provides a) a bytecode (*yawn*), b) an ABI and API for all languages so they can interoperate, c) a system library that's (supposedly) usable by all languages 10:24:38 should thank Robert :( 10:25:01 michelp: why not base all this on x86 (or anything, really) instead of inventing your own meta-cpu? 10:25:14 forth cpu!!!1 10:25:27 michelp: and, why wasn't this done 20 years ago already? maybe there's a good reason to not have a system library for each and every language? 10:25:36 oxygene: you mean a virtual 86 machine? 10:25:36 otherwise i'm not sure what you mean. 10:25:59 Raystm2 I agree Parrot should have been written in Forth. 10:26:08 michelp: I doubt that "all languages are the same" is the right approach.. it's the approach of CLR/.net and parrot/perl6 though 10:26:24 .net powaahahhhhhhhh 10:26:52 michelp: there are good reasons why languages have their own basic libraries, and there are good reasons every now and then for them to be incompatible on an ABI level 10:26:56 oxygene: yes, they are having some problems resolving these issues. The Jython/Java folks have also had to deal with the corner issues in the differences between Python and Java 10:27:06 I believe the idea in Parrot is to provide an environment where each lang works together at strength. Parrot will cripple the forth imnsho :( 10:28:01 But at least it will be available. Minotour (sp?) has the idea the other way around I believe. 10:28:12 michelp: C# has a "final" keyword to prevent subclassing.. so far, so good.. using SmallScript (smalltalk for CLR) you can just add new methods to existing classes or subclass, and then use those new classes instead of the original ones using C#.. any "security concept" of C# is worked around that way and "final" is merely an annotation 10:28:18 Raystm2 it has to, consider '@' and '!'. Parrot provides no access to "memory" (like the JVM) so these must be emulated with an array. 10:28:29 Raystm2: Parrot can't be a true Forth VM in that respect 10:29:03 true forth works on a forth cpu :( 10:29:35 sorry I should have said "Parrot, like the JVM, provides no access to "memory"" 10:30:00 thank you michelp for the clarification :) 10:35:24 Oh, yeah, Btw, I'm awake now. How's everybody doing today? 10:38:56 Tell's ya how popular I am. :) 11:01:13 --- quit: michelp (Read error: 113 (No route to host)) 11:04:56 --- join: michelp (~michel@67.136.151.168) joined #forth 11:05:10 wb 11:10:52 --- quit: tathi ("leaving") 11:22:50 --- quit: Robert (": 1984? 2 2 + 5 = ;") 11:31:04 --- join: proteusguy (~proteusgu@24-159-109-218.cpe.ga.charter.com) joined #forth 12:00:08 hm. yay. i got myself a set-solving code now :p 12:00:37 funny to look at, too quick (its very slow due to graphics) to be able to see what he really does :p 12:01:02 well... at least i dont think its humanly possible to look that fast 12:01:04 :) 12:01:20 you'd have to be like data :p 12:02:09 ehm. ok it appears that images need to be unloaded or memmory leaks occur :p 12:32:57 hm. if only i could find me an example how to :p 12:33:17 anyone know the MSG for a button press? :) 12:33:25 WM_buttondown or something? 12:37:48 heh. ok. this aint it. now its not painting the window, only the bitmaps 12:37:55 nice effect but not quite what i had in mind :p 12:38:30 ah 12:39:55 --- join: Robert (~pink@c-bf5a71d5.17-1-64736c10.cust.bredbandsbolaget.se) joined #forth 12:56:30 --- quit: michelp (Read error: 104 (Connection reset by peer)) 12:59:10 --- quit: cmeme (Remote closed the connection) 12:59:41 --- join: cmeme (~cmeme@216.184.11.30.unused.swcp.com) joined #forth 13:08:38 --- join: Topaz (~top@sown-86.ecs.soton.ac.uk) joined #forth 13:08:56 Hi Topaz 13:09:19 heya 13:09:25 How are your babies? 13:09:46 er, hello :P 13:10:05 might you be referring to my collection of O2s? or my brothers&sisters? 13:10:21 O2? 13:10:29 Actually I was refering to the AVRs. 13:10:35 I thought that was obvious. :) 13:10:53 haha 13:11:01 i haven't played with many AVRs in a while, actually 13:11:08 i blew up my ATMega8535 :/ 13:11:15 got the colours on an ATX power connector confused ;) 13:11:26 i now have two AVR spiders 13:11:36 Heh. 13:12:42 my net connection is a tad ropy 13:12:48 'ropey?' 13:13:10 currently consists of two pringles cans, a bean tin, a big shiny dish, and a solderised USB network card 13:13:23 I.......see. 13:13:33 though that isn't the problem 13:13:43 but i'm connecting to the internet proper through a university VPN 13:13:46 which has serious issues... heh 13:14:02 * Robert needs to construct that vaporware radio link. 13:14:59 I can't wait until I can IRC from Nowhere(TM) 13:15:32 i'm actually pulling about 400kbyte/sec through the radio link, tis rather fun 13:15:42 network card states a SNR of 9db, but i'm sure it's higher than that 13:15:51 it's a ridiculously cheap network card with terrible drivers 13:15:53 * Raystm2 sorry to interupt. Yeah my third Debian disk just finished d/l. I had to tell someone :) 13:16:19 it appears to report about 6 levels of signal, which are 2,3,5,9,11 and 16dB, and randomly alternates between them 13:16:47 hmm, i wonder if netbsd will run on an 8088 13:16:51 linux won't :/ 13:17:54 Raystm2: Congratulations. :) 13:17:57 Topaz: Really? 13:18:04 Topaz: Not even the 8088 port? 13:18:10 MINIX will. :) 13:18:13 i didn't realise they had backported it as far as that 13:18:22 i know of the 286 backport of it 13:18:27 Is that ELKS? 13:18:42 Then that's what I was thinking og. 13:18:43 of 13:20:00 Do you happen to know if my PS/1 386 computer might use one of those "XT hard drive controllers" described in the Linux kernel? 13:22:19 heh, a good question 13:22:28 You should know! 13:23:14 yay, ELKS will apparently run on this lappy 13:23:20 next problem, finding a floppy disk 13:23:25 * Topaz gets his archaeologist hammer 13:23:43 i wonder if it has an ISA bus on it 13:34:00 Hehehe 13:34:04 8088 laptop? 13:34:32 --- quit: Topaz (Read error: 54 (Connection reset by peer)) 13:34:48 --- join: Topaz (~top@sown-86.ecs.soton.ac.uk) joined #forth 14:05:00 --- join: ok (r@core-dc-5-54.dynamic-dialup.coretel.net) joined #forth 14:05:06 14:05:48 hey ok - sup? 14:06:51 no paso nada 14:06:53 ok ok 14:17:24 --- quit: qFox ("this quit is sponsored by somebody!") 14:18:33 --- join: ows (~ows@a81-84-114-35.netcabo.pt) joined #forth 14:32:28 --- quit: Topaz (Read error: 113 (No route to host)) 14:46:32 --- join: Topaz (~top@sown-86.ecs.soton.ac.uk) joined #forth 14:49:55 --- join: oyd (~Miranda@80.178.227.252.forward.012.net.il) joined #forth 14:53:20 --- part: slava left #forth 14:55:04 --- quit: ok (Read error: 60 (Operation timed out)) 15:07:13 --- quit: Topaz (Read error: 113 (No route to host)) 16:29:45 --- join: TheBlueWizard (TheBlueWiz@modem-149.nyc-tc03b.fcc.net) joined #forth 16:29:45 --- mode: ChanServ set +o TheBlueWizard 16:48:48 --- quit: Raystm2 ("User pushed the X - because it's Xtra, baby") 17:08:10 --- join: arke (~chris@wbar8.lax1-4-11-100-111.dsl-verizon.net) joined #forth 17:08:17 Hi, anybody alive to answer a questoin for me? 17:09:34 --- quit: ows ("Client Exiting") 17:10:35 what question 17:10:50 I need to have a word perform WORD at runtime, not compile time 17:10:50 arke hiya...go ahead and ask 17:10:57 hi TheBlueWizard :) 17:11:21 I would think "postpone/compile word", but I wanted to ask first, to be certain 17:11:46 actually, no, thats not working. 17:12:32 Nevermind, I think I figured it out 17:12:43 : moo postpone word ; : blah 32 moo count type ; 17:12:47 I'm inclined to use that postpone/compile...but you want it to execute, not compile the word WORD into dictionary...so some dialects would offer ['] 17:12:51 seems to do the trick. 17:13:17 (or something like that) 17:13:23 actually, I don't know if this is working 17:13:38 * arke cries 17:13:57 don't cry....just experiment :) 17:14:23 :) 17:14:45 if Sonarman was here, he could answer me. 17:15:02 I440r_: how would I do it for isforth? 17:15:23 I want word to take its input from the standard input when it is run 17:15:28 not from the command line 17:19:25 expolain what you want exactly ? 17:19:34 you want to be able to do "word" at run time ? 17:19:39 : blah bl word .... ; 17:19:48 no need to use postpone or compile 17:19:52 word is not an immediate word 17:21:03 it wouldn't take from stdin though. 17:21:09 but its ok, I figured out a better solution. 17:21:17 --- part: arke left #forth 17:21:26 word uses TIB 17:21:51 just write an input word to write the input data into tib 17:28:06 --- join: Sonarman (~matt@adsl-67-113-234-22.dsl.snfc21.pacbell.net) joined #forth 17:29:52 --- part: oyd left #forth 17:37:07 --- quit: madgarden ("*frotz*") 17:38:49 --- join: madgarden (~madgarden@Kitchener-HSE-ppp3576522.sympatico.ca) joined #forth 18:42:38 I440r_: you there? 18:42:50 nope :) 18:42:51 hehe 18:43:08 * TheBlueWizard nods re: his absence ;) 18:43:13 :) 18:44:35 whussup ? 18:45:51 OK, I found a file containing a subset of 386 assembler...it was for Win32Forth...I am thinking about implementing it for isforth 18:46:11 thoughts? 18:46:38 well - does it encode the opcodes in octal ? 18:46:46 does it allow SANE assembler syntax ? 18:46:53 i.e. mov eax, .... 18:46:59 not ... eax, mov 18:47:06 and specially NOT mov, <-- ick 18:47:37 i already have 99% of the assembler thought out AND implememented, just not for x86 :( 18:47:37 nope...it use classic Forth style syntax... 18:47:44 i cant use that 18:47:50 i cant get my head arround it 18:47:56 ok...I will not do that one then 18:48:06 and i am not prepared to go through all my sources and change them 18:48:15 hehe 18:48:18 its my #1 prime requirement for an isforth assembler 18:48:27 that i do not have to do major surgery on the existing sources 18:48:41 lol...understood completely 18:48:42 thats always been my highest priority here 18:49:18 well, I don't see how to code up a traditional style assembler in Forth 18:49:49 look at my 8051 assembler 18:50:02 its very simple 18:50:18 every mneumonic starts with an asm> call 18:50:41 asm> pulls the return address off the return stack then sticks the previous return address BACK on the return stack 18:50:49 so if you do... 18:50:53 mov eax, 1 18:51:04 mov is executed but it assembles the previous opcode 18:51:14 eax, executes and sets a flag saying eax is the destination reg 18:51:24 then the 1 goes on the stack 18:51:58 then when the next mneumonic is parsed IT reeturns into the above mov and THIS then has all the info it needs to assemble the correct opcode 18:52:42 alsio 18:52:42 ok...obviously mov must record its eventual action in addition to assembling the previous instruction 18:52:45 right? 18:53:15 asm> might be defined as : asm> r> opcode @ >r opcode ! ..... ; 18:53:48 also. if you make asm> a deferred word you can NOOP it out and use traditional forth syntax too 18:53:54 mov eax, 1 or 1 eax, mov 18:54:25 hmm I see 18:54:37 notice i did NOT use # there 18:54:44 # is superflouous 18:54:55 its totally unneeded syntatic sugar 18:55:33 just like classic Intel syntax...# isn't used either (so 6502-ish) 18:57:11 exactly 19:06:07 well, gotta go...all bye 19:06:14 --- part: TheBlueWizard left #forth 20:35:34 --- quit: Zymurgy ("Leaving") 20:36:28 --- quit: Sonarman (Read error: 104 (Connection reset by peer)) 20:48:37 --- join: Raystm2 (Rastm2@AC9D526E.ipt.aol.com) joined #forth 21:56:21 --- join: yome (~rewt@MTL-HSE-ppp188862.qc.sympatico.ca) joined #forth 22:12:52 --- join: Sonarman (~matt@adsl-64-169-92-18.dsl.snfc21.pacbell.net) joined #forth 22:14:04 --- join: Klaw` (~anonymous@c-67-171-207-91.client.comcast.net) joined #forth 22:34:36 --- join: ASau (~root@83.102.133.66) joined #forth 22:34:52 Dobryjj vecher! 22:35:03 Privet! 22:35:18 To those who's in Europe, dobroe utro. 22:35:47 Privet, Sonarman! 23:02:01 --- quit: Sonarman ("leaving") 23:02:24 --- join: Serg_penguin (~Miranda@212.34.52.140) joined #forth 23:02:29 hi ! 23:02:47 * Serg_penguin is securing my new PHP easy CMS ;) 23:03:03 Hello Serg_penguin : How are you today ? 23:20:01 --- quit: Raystm2 ("User pushed the X - because it's Xtra, baby") 23:59:59 --- log: ended forth/04.10.25