00:00:00 --- log: started forth/05.01.22 00:16:16 --- join: SeaForth (~SeaForth@c-24-1-126-202.client.comcast.net) joined #forth 00:52:15 --- quit: yumehito (Connection timed out) 01:47:59 --- join: Topaz (~top@sown-85.ecs.soton.ac.uk) joined #forth 02:06:47 --- quit: Topaz (Read error: 60 (Operation timed out)) 02:22:33 --- join: Topaz (~top@sown-86.ecs.soton.ac.uk) joined #forth 03:23:13 --- quit: I440r (Read error: 60 (Operation timed out)) 03:23:33 --- join: I440r (laptop@216-110-82-59.gen.twtelecom.net) joined #forth 05:01:15 --- join: T0paz (~top@sown-85.ecs.soton.ac.uk) joined #forth 05:01:37 --- quit: Topaz (Read error: 60 (Operation timed out)) 05:35:36 --- join: thinfu (thin@bespin.org) joined #forth 05:35:36 --- mode: ChanServ set +o thinfu 05:49:17 --- join: samc_ (~sam@203-114-131-122.inspire.net.nz) joined #forth 06:14:15 --- join: }Topaz{ (~top@sown-85.ecs.soton.ac.uk) joined #forth 06:15:00 --- quit: T0paz (Read error: 113 (No route to host)) 06:22:21 --- quit: }Topaz{ ("Leaving") 08:49:02 --- join: hyrax (~das@adsl-64-219-100-33.dsl.lgvwtx.swbell.net) joined #forth 10:01:56 --- quit: onetom_ ("Changing server") 10:11:54 Hi all 10:42:20 --- join: artoffoo (1000@c-24-129-90-197.se.client2.attbi.com) joined #forth 10:44:15 --- nick: artoffoo -> saon 11:02:58 --- quit: SeaForth (tolkien.freenode.net irc.freenode.net) 11:02:58 --- quit: Teratogen (tolkien.freenode.net irc.freenode.net) 11:04:06 --- join: SeaForth (~SeaForth@c-24-1-126-202.client.comcast.net) joined #forth 11:04:06 --- join: Teratogen (~leontopod@intertwingled.net) joined #forth 11:04:40 --- quit: saon ("leaving") 11:05:54 --- join: saon (1000@c-24-129-90-197.se.client2.attbi.com) joined #forth 11:19:04 --- join: Sonarman (~snofs@adsl-66-124-254-171.dsl.snfc21.pacbell.net) joined #forth 11:25:01 --- quit: saon ("leaving") 11:25:16 --- join: saon (1000@c-24-129-90-197.se.client2.attbi.com) joined #forth 11:32:50 --- quit: Sonarman ("leaving") 11:35:47 --- quit: saon ("Leaving") 11:37:42 --- join: artoffoo (1000@c-24-129-90-197.se.client2.attbi.com) joined #forth 11:55:54 --- quit: Herkamire ("blah") 12:02:17 --- quit: SeaForth ("Leaving") 12:11:56 art of foo? 12:12:10 art of fu? :P 12:20:55 --- join: Herkamire (~jason@h000094d30ba2.ne.client2.attbi.com) joined #forth 12:20:55 --- mode: ChanServ set +o Herkamire 12:38:01 --- nick: samc_ -> _samc 12:42:43 --- nick: _samc -> SemanticsNinja 12:46:14 --- join: Purdu3 (YNIX@12-222-128-22.client.insightBB.com) joined #forth 12:57:36 --- nick: SemanticsNinja -> _samc 13:00:00 --- join: SeaForth (~SeaForth@c-24-1-126-202.client.comcast.net) joined #forth 13:03:52 crc, does the language solve complex problems tho? 13:03:59 or does the language simplify the problem first? 13:04:08 thats what the topic might want to express.. 13:04:11 :P 13:09:10 --- part: _samc left #forth 13:30:58 hmm 13:31:25 --- topic: set to 'Forth: One language, many dialects' by crc 13:42:34 --- join: aum (~aum@60.234.138.239) joined #forth 13:46:56 --- join: Sonarman (~snofs@adsl-64-160-167-185.dsl.snfc21.pacbell.net) joined #forth 13:47:46 phew, finally got 'case' statements working, at an overhead of 6n+1 bytes 13:48:48 --- part: thinfu left #forth 13:55:12 --- join: Binaryguy (~Binaryguy@host81-129-70-217.range81-129.btcentralplus.com) joined #forth 14:19:06 --- join: MorgothDc (~Morgoth@gw-fr-1.gwarbit.pl) joined #forth 14:27:36 --- quit: Binaryguy ("Leaving") 14:29:35 --- quit: MorgothDc ("Leaving") 14:50:36 --- join: slava (~slava@24.43.80.135) joined #forth 15:03:31 --- join: TheBlueWizard (TheBlueWiz@modem-151.nyc-tc03b.FCC.NET) joined #forth 15:26:58 --- quit: TheBlueWizard (tolkien.freenode.net irc.freenode.net) 15:26:59 --- quit: cmeme (tolkien.freenode.net irc.freenode.net) 15:28:08 --- join: cmeme (~cmeme@216.184.11.2) joined #forth 15:32:05 --- join: TheBlueWizard (TheBlueWiz@modem-151.nyc-tc03b.FCC.NET) joined #forth 16:08:21 --- join: semtex (~zoly@ppp-62-245-210-93.mnet-online.de) joined #forth 16:08:27 g'day 16:08:31 * semtex alias zoly 16:08:59 * TheBlueWizard stands back from semtex 16:41:47 hi 16:43:15 hiya aum 16:43:23 hi 16:43:55 how goes in syntax reverse of land? 16:48:26 it reverses well enough :) 16:48:31 heh 16:49:00 man, 'case' is one ugly fscker to implement 16:49:22 :) 16:53:52 dont use case 16:54:02 don't use 'rot' either 16:54:20 ? 16:54:22 even 'swap' is a bit suss 16:54:32 no, you missed the point completely 16:54:37 * aum can be a facetious mofo sometimes 16:54:47 sorry, i didn't get your point - please do tell 16:54:48 each conditional in a 'case' is usually a type test of some kind 16:54:58 yes 16:54:58 what you really want is methods 16:55:12 instead of a huge case block, you call a method on an object 16:55:25 this is like structured programming -vs- goto... case has the same smell as goto 16:56:10 well, my case implm is a wrapped, optimised series of 'else over = drop if' culminating in 'then then then ...' 16:56:34 yes, and if you have a word with more than two distinct conditional cases, your code needs refactoring 16:56:38 well, 2-3 16:56:48 if you have 6 cases, make some objects and methods instead 16:57:02 you're making me think 16:57:06 good 16:57:12 perhaps i should build in some oo infrastructure 16:57:24 good 16:58:11 then, i'll have to provide a runtime heap, instead of just the compile-time heap i've got now 16:58:20 why? 16:58:44 objects can be n bytes large, eh 16:58:56 ... 16:59:44 i could go the easy way and stick in a barebones early-binding oo framework 16:59:57 you can achieve late binding without runtime heap allocation 17:00:22 i don't want method/attribute name strings ending up in the compiled code 17:00:48 who says you have to store method name strings? 17:01:11 any decent OO implementation doesn't search through lists of strings at runtime, even if its late binding 17:02:35 how do you do late binding without dealing with method name strings at runtime? 17:03:10 are you familiar with C++? virtual method dispatch is done at runtime but method names are not present in compiled code 17:03:26 nothing says the compiler has to compile method name strings, it can use fixed-width tokens or something 17:03:37 or even hashes perhaps 17:11:47 --- quit: artoffoo ("leaving") 17:13:45 aum, t'is not difficult if they just generate the corresponding if else then structure 17:14:00 (that's what eaker's case does) 17:14:22 its an issue of code style not difficulty of implementation 17:14:31 semtex: i've built (of) and (endof) primitives to do just that 17:16:13 aum, by using tokens (integers for examle) rather than strings 17:16:47 finished reading backlog 17:17:22 aum, in factor's case, i implemented method dispatch and saw a performance gain over chained if/then/else 17:17:33 not to mention shorter, clearer code 17:23:07 well, there's 2 schemes i've seen for late binding 17:23:58 one is the FICL OO approach of objects being represented on the stack as 'inst-addr cls-addr' pairs 17:24:11 and invoking a method by '--> methodname' 17:25:08 the other is where the class id is the first attribute of the object, so at a cost of 1 cell per instance, there's no need to chaperone each instance on the stack with its class addr 17:25:53 in factor, a cons cell (linked list node) uses exactly 8 bytes on the heap. how does it do this then? :) 17:26:37 i might leave OO to the next major vers of PIC18Forth - I'm close to release with what I've got 17:26:50 you can also have tagged pointers, aum 17:27:05 ? 17:27:19 its what factor does. i think we discussed it. the least significant 3 bits of each cell is a tag. 17:34:13 is it right that there was no standard before dpans94 which required rdrop ? 17:34:28 : rdrop r> drop ; 17:34:33 oh, really ? 17:34:39 heh 17:34:43 but that wasn't my question :) 17:34:46 k 17:35:15 creating a standard for forth is like trying to create a standard for sex 17:35:36 aum, that definition of rdrop won't work on most forths 17:35:36 couldn't find it in earlier specifications 17:35:49 slava: eh? why? 17:36:05 : rdrop r> r> drop >r ; might work in some 17:36:15 do you know what the return stack is used for? 17:36:30 return address of calling word, loop counter vars, local vars... 17:37:43 (i'm just writing some word descriptions, part of jsforth, which has integrated help. each word can also tell why it is in there, i.e. which standard, if at all, requires it) 17:38:24 i wonder whether it would be useful to tell the compiler to accept only words which comply with any of those (user specified) 17:38:40 so it would reject definitions which do not comply 17:38:54 after all, that info is, per word, available at compile time 17:39:35 so if user says "f83". the compiler would reject all stuff which has been standardized only by dpans 17:39:42 or vice versa 17:39:54 would also reject my own extensions of course 17:40:13 25 years ago it was easier 17:40:29 to tell apart what word was required by what standard 17:40:57 and to my surprise, rdrop does seem to be a rather new word 17:41:17 would have to be rejected when asking for f83-clean compilation 17:42:17 aum: therefore, an (correct or not) implementation of rdrop doesn't help me 17:43:06 i just don't seem to be able to find it in earlier standard and wordset specifications 17:44:14 reason i consider that is: there is tutoring material around for different standards 17:44:49 and jsforth is meant to be used as online tutorial system 17:45:02 it's a good concept 17:45:11 and good PR for forth 17:45:35 therefore i would have a mechanism that way to disallow or warn in case the "wrong" standard would be used 17:45:50 which has plenty of potential to confuse newbies 18:34:32 to call upon this information, "help word" is used - the compiler does not use it right now. it is a bit mask, each of dpans94, f83, f79 and fig is one bit 18:37:06 up to word "depth" is doc'd as far 19:45:00 --- quit: I440r (Connection timed out) 20:26:50 --- quit: slava ("Leaving") 20:41:21 * aum releases pre-pre-alpha of pic18forth - www.freenet.org.nz/pic18forth 20:50:51 --- part: TheBlueWizard left #forth 21:24:57 nice, aum 21:25:41 thx 21:25:43 early days yet 21:25:44 does the 18xxx line of pic have on-board mem besides the register banks ? 21:25:58 only 256bytes of data EEPROM 21:26:00 * semtex only knows up to 16xxx 21:26:16 the 18xxx have 1.5k of registers or more 21:26:39 and the memory - data and prog - on 18xxx is far more linear - no more 'bank switching hell' 21:26:50 and 3 FSRs, not just 1 21:27:08 i've written a forth runtime for 16xxx once, you cold compile programs of up to 80 registers size 21:27:12 could 21:27:34 you mean, storing programs in RAM? 21:27:38 but the vocabulary lookup had to be done by another controller :) 21:27:39 yes 21:28:00 hey, i like that - another dedicated PIC to run the vocab 21:28:20 it was an H8/3xx in fact 21:28:41 the pic was there just for rs232 i/o 21:28:46 ah, k 21:28:51 but i had it do a bit more :) 21:29:07 * aum would like $1 for every under-achieving PIC chip in the field 21:29:22 it was then a *dynamically reprogrammable* i/o controller 21:31:12 i might have a look at the avr mega devices one of these days 21:31:36 looks like they would be quite suited for a complete forth interpreter 21:31:39 i was interested in avr mega, but fwict the PIC18xxx devices offer at least as much power, for much cheaper 21:31:57 well, 32 or 64 k on-chip ram is not nothing 21:32:12 is that what the avr megas have? 21:32:16 right 21:32:23 i think there's even 128 kb 21:32:31 but already 32 is plenty 21:32:50 i've heard there are supply problems and long lead times with AVRs though, and the support isn't as good 21:33:24 i got a couple of msp43x here now 21:33:34 they look quite allright as well 21:33:50 even a bit cheaper than the avrs 21:34:03 but haven't finished forth for them yet 21:34:10 (started, though) 21:34:27 nobody /ever/ finishes a forth implementation :P 21:34:37 hmm 21:34:45 i have finished several 21:35:04 finished in the sense that they are in production machines, and i;m never ever going to change them anymore 21:35:07 finished? or got them to a point of usability? 21:35:26 you know the movie "sneakers" ? 21:35:32 no 21:35:43 heard of it though 21:35:55 there's a device in it with a forth interpreter of mine 21:36:08 that's kewl on your CV :) 21:36:17 there's more cool things on my cv 21:36:23 i even don't mention that movie 21:36:46 --- quit: Raystm2 ("User pushed the X - because it's Xtra, baby") 21:37:05 one installation i worked on was visited by 10 million people :) 21:37:39 (wrote it in forth btw) 21:38:56 http://www.jeffrey-shaw.net/html_main/show_work.php3?record_id=83 21:39:28 pushbike VR ? 21:40:03 --- join: Raystm2 (~Ray@adsl-69-149-42-7.dsl.rcsntx.swbell.net) joined #forth 21:40:07 right 21:40:14 bicyle is your joystick 21:40:29 sweet 21:40:35 you steer through the projected vr world 21:40:51 one of the two software people is me 21:41:02 you could come up with an 'extreme weight loss' studio - where pedalling the bike harder takes one closer to 3d pr0n 21:41:16 *g* 21:41:22 this went to japan first 21:41:39 were the staggering number of 10 mill visitor came there 21:41:49 then it went to boston 21:42:20 bit more lofty than my claim to fame - when anyone in the city of Adelaide, Australia flushes their toilet, my code is running 21:42:22 siggraph 21:43:07 same time it was in boston, an unrelated event took place (/me in amsterdam then) 21:43:43 (probably) first private video link between (then) soviet union and -- boston, siggraph .. 21:44:03 (oh right, it was my computer being the relay) 21:44:19 i mention that because i found that quote a coincidence 21:44:53 end point of video link same place in the states where another installation was just running ... 21:46:11 what does code in toilets do ? 21:47:03 can i have such a toilet ? 21:47:31 i got one without electronics 21:47:46 a bit old-fashioned 21:48:45 (but it has a handle to flush it though) 21:49:02 sewerage processing plant 21:49:06 ah 21:49:43 SCADA software for processing the chunky raw sewage into water fit for irrigation 21:51:02 note the date of that bicycle .. 21:51:48 3d-vr wasn't within range of the average machine then 21:51:55 right 21:52:06 unlike today's consoles and FPS games 21:52:12 xactly 21:52:57 could be done with photorealistic rendering today 21:53:17 we got about 10 fps out of it 21:54:42 was 15 minutes over deadline 21:54:51 (which was plane departure...) 21:56:12 the airplane departure was delayed for that ... 21:56:27 quite tight schedule 21:56:47 how long will it be before significant percentages of the population are living in VRs most of their waking lives? 21:57:11 nobody lives in the "real" world 21:57:37 everybody lives in the virtual world, created by the brain 21:58:35 --- quit: SeaForth (Read error: 110 (Connection timed out)) 22:00:40 --- join: onemanarmy (~zoly@ppp-62-245-161-10.mnet-online.de) joined #forth 22:00:46 --- nick: onemanarmy -> zoly 22:01:02 adsl reconnect 22:01:05 * zoly alias semtex 22:01:17 at 7:00 22:07:07 --- join: SeaForth (~SeaForth@c-24-1-126-202.client.comcast.net) joined #forth 22:07:23 does anyone know how i can set a variable in the html file which calls a javascript script, and read that variable from there ? 22:11:03 specifically, these: textarea type="text" name="dialog" rows="25" cols="80" onKeyPress=... rows and cols 22:16:19 --- quit: semtex (Read error: 110 (Connection timed out)) 22:17:22 wow 22:17:31 "key" works in jsforth :) 22:17:58 keyboard interaction in a non interactive language 22:20:40 : foo begin key dup esc <> while emit repeat drop ; 22:20:45 amazing 22:22:13 i think i can get "key?" to work as well 22:24:48 key was much easier than i was afraid of 22:33:23 --- join: Sonarman_ (~snofs@adsl-66-124-255-174.dsl.snfc21.pacbell.net) joined #forth 22:43:22 zoly: so when you gonna reimpl it in java for web applets? 22:46:08 no, i won't touch java 22:47:53 but i want jsforth to be able to compile and execute forth source, embedded in html files 22:49:11 one big issue, keyboard / (mouse) interaction, has been solved. that would allow for forth applets already 22:49:15 another ques - are there words for messing with the page DOM? displaying/driving HTML menus etc? 22:49:46 there is the "eval" word which passes a string to javascript 22:49:57 --- quit: Sonarman (Read error: 110 (Connection timed out)) 22:50:08 you should cut a bunch of libs over the top of eval 22:50:19 rephrase plz 22:50:21 so people can have pages almost totally rendered by forth code 22:50:37 what i mean is forth words to manipulate page content, styles etc 22:51:07 ah. right. i reckon a lot can be done by loading forth words from source 22:51:26 forth blocks file system is on schedule 22:51:54 so there'd be pages with almost no html at all, with content generated completely by forth code 22:52:25 quite possible, it seems 22:52:35 one q - is it possible within js to hit a remote url, get the page as a string, and carve up the string as desired? 22:52:41 the execution speed is not that bad 22:52:55 very likely 22:52:59 i know js is a bit of a sandbox (thank goodness), but I'm not sure of the extent of the restrictions 22:53:43 i can't open local files with file:/ , but i can read files with http:// 22:54:17 you could build smart client-side websites 22:54:39 now that it starts working, ideas how to use it are shaping up 22:55:01 was thinking of client-to-client communication, relayed by web servers 22:55:09 or p2p apps? 22:55:27 the potential is enormous 22:55:38 sure is 22:55:45 supermassive forth cluster ... 22:55:49 good on you for taking the concept into actual impl 22:57:06 maybe forth will become the lingo franca of the web after all :) 22:57:35 keep going on it - you've got a good thing happening 22:57:43 how long have you been working on it so far? 22:57:50 a week 22:57:59 shit, you don't waste any time 22:58:11 but then again, js is a nice target platform, would save you lots of pain 22:58:14 took me two days to figure out the terminal 22:58:47 but, i was starting from zero 22:59:05 starting jsforth was the first time i touched javascript 22:59:36 someone javascript-savvier would have solved that in 5 minutes i reckon 23:00:28 i'm actually quite pleased with the progress as far 23:00:33 --- quit: Sonarman_ (Read error: 110 (Connection timed out)) 23:00:53 but then, i could reuse quite a lot of what i've written for bashforth 23:01:56 bash and javascript syntax are very similar 23:02:41 big chunks of code needed only a bit of syntax touching for getting them ready-to-run 23:02:42 but js is more oo than bash, surely? 23:03:04 oh yes, but i ignored that aspect almost completely :) 23:03:21 you're not using js's OO? 23:03:28 harly 23:03:31 hardly 23:03:37 (i wouldn't even know how) 23:04:12 i looked at a bit of js coupla years ago, but got frustrated by the lack of truly browser-independent libs 23:05:03 anyway, late for my daily rtcw:et hit 23:05:04 bbl 23:05:06 --- quit: aum () 23:05:10 i have added facilities to jsforth to switch between forth standards :) 23:36:30 anyone here read http://www.blachford.info/computer/Cells/Cell0.html 23:36:33 seems perfect for forth 23:37:16 'll have a look 23:38:34 i *think* i've looked at a page about those, on an url posted here, yesterday or two days ago 23:38:37 estimated SETI work unit completion time is about 5 minutes. 23:39:20 or about 70-80 times faster than my 1.25 ghz G4 with vectorization turned on for the client. 23:43:22 Its interesting, about 4 years ago at the end of 2000 I emailed Alan Kay and asked him for some advice. I requested that he tell me the ONE book to read about his vision of computers, hardware and software, and his response was simple. The latest edition of the definitive Biology book, The Cell. 23:43:52 Of course I ordered it, read it (was like going back to college for a week), and shelved it. I'm going to have to revisit this again. 23:59:59 --- log: ended forth/05.01.22