00:00:00 --- log: started forth/06.12.19 00:06:37 --- quit: Shine ("Chatzilla 0.9.77 [Firefox 2.0/2006101023]") 00:15:16 --- quit: JasonWoof ("off to bed") 00:34:47 --- join: ecraven (n=nex@eutyche.swe.uni-linz.ac.at) joined #forth 02:15:53 --- quit: Cheery (Read error: 110 (Connection timed out)) 02:35:17 --- join: Cheery (n=Cheery@a81-197-54-146.elisa-laajakaista.fi) joined #forth 02:45:32 --- join: zpg (n=user@user-514fca8b.l3.c4.dsl.pol.co.uk) joined #forth 03:23:47 --- join: Raystm2- (n=NanRay@adsl-69-149-46-63.dsl.rcsntx.swbell.net) joined #forth 03:39:12 --- quit: Raystm2 (Read error: 110 (Connection timed out)) 03:39:40 --- join: Raystm2 (n=NanRay@adsl-69-149-51-163.dsl.rcsntx.swbell.net) joined #forth 03:42:41 --- quit: Raystm2- (Read error: 145 (Connection timed out)) 03:50:10 --- quit: zpg ("ERC Version 5.1.3 (IRC client for Emacs)") 04:44:42 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 04:44:43 --- mode: ChanServ set +o tathi 05:43:39 --- nick: Raystm2 -> nanstm 06:20:56 --- join: Ray_work (n=Raystm2@199.227.227.26) joined #forth 06:21:33 Good morning. 06:40:16 --- quit: crest_ (Read error: 145 (Connection timed out)) 06:54:31 --- join: Crest (n=crest@p5489644A.dip.t-dialin.net) joined #forth 06:59:02 --- quit: ecraven ("bbl") 07:03:07 --- join: zpg (n=user@85-210-49-64.dsl.pipex.com) joined #forth 07:11:51 --- quit: Crest (Read error: 60 (Operation timed out)) 07:20:10 --- join: Crest (n=crest@p548960EB.dip.t-dialin.net) joined #forth 07:52:52 --- join: Shine (n=Frank_Bu@xdsl-84-44-158-148.netcologne.de) joined #forth 08:10:56 --- join: virl (n=virl@chello062178085149.1.12.vie.surfer.at) joined #forth 08:19:35 Hi chaps. 08:22:32 --- part: zpg left #forth 08:22:43 --- join: zpg (n=user@85-210-49-64.dsl.pipex.com) joined #forth 08:31:11 --- join: JasonWoof (n=jason@c-71-192-26-248.hsd1.ma.comcast.net) joined #forth 08:31:11 --- mode: ChanServ set +o JasonWoof 08:33:07 hi JasonWoof 08:51:10 --- part: zpg left #forth 08:51:23 --- join: zpg (n=user@85-210-49-64.dsl.pipex.com) joined #forth 08:57:10 hi z ;) 08:57:19 hi :) 08:57:48 * zpg nods to Ray_work and JasonWoof 08:59:41 --- join: jackokring (n=jackokri@static-195-248-105-144.adsl.hotchilli.net) joined #forth 09:06:34 is there a standard forth word that will give me the time? with microseconds? I want to time some forth commands. 09:08:37 TIME&DATE 09:08:51 ( -- +n1 +n2 +n3 +n4 +n5 +n6 ) 09:08:55 see: http://www.taygeta.com/forth/dpans10.htm#10.6.2.2292 09:13:16 --- join: ttuttle (n=tom@unaffiliated/ttuttle) joined #forth 09:13:57 Quartus: Remember the Dell battery I was telling you about? They're replacing it for free. And for the grand total of $11.50, I can keep the old one, which still has the capacity of a 6-cell battery that probably itself costs $100 or more. 09:21:07 Quartus: So I can potentially buy brand new 9-cell Inspiron batteries for $11.50 each, by complaining that they're dead. 09:21:33 Quartus: They'll catch on after a while, but I need to stock up enough to last me the rest of my 3-year warranty, since the battery warranty is only 1 year. 09:39:02 max II cpld dev kit has arrived, so now how to make for a rom...umm 09:48:45 --- quit: ttuttle ("leaving") 10:31:38 --- quit: segher (Read error: 145 (Connection timed out)) 10:32:48 --- join: segher (n=segher@dslb-084-056-134-081.pools.arcor-ip.net) joined #forth 10:51:26 absentia: the word MS is provided in most systems to give you the milliseconds 10:52:26 which reminds me, I need to recalculate MS for Chucks version of colorforth when it's running on my superior machine. 10:53:17 "ms" is a sleep word though, right? 10:53:21 `ms' n - facility-ext ``ms'' 10:53:21 Wait at least n milli-second. 10:53:51 not applicable for calculating time difference before and after an operation. 10:54:11 I didn't know what he was using it for. 10:55:03 scroll up 10:55:56 Ray_work: so, been doing any more cf coding recently? 10:57:14 --- join: snoopy_1711 (i=snoopy_1@dslb-084-058-122-084.pools.arcor-ip.net) joined #forth 11:05:35 --- quit: Snoopy42 (Read error: 145 (Connection timed out)) 11:05:59 --- nick: snoopy_1711 -> Snoopy42 11:17:31 yes, zpg, I have. Just a tad. Nothing earth shattering. Going over a collection ( 4) of different approaches to Chess. 11:19:12 Oh and my "versioning" system as well. 11:20:52 It's called NEXTBLOCK. you feed it a range of blocks at start and then copy in your working block to the first NEXTBLOCK. as you code you hit 'nb' and it copies the working block to the next available block and sets the editor on that block. Last block in the range overwrites itself should you try to pass. 11:21:46 I think I'll get it to beep when it copies into the endblock and give the option to start from the front again. 11:25:21 jackokring: what are your plans for your CPLD dev kit? 11:25:52 Hey all. 11:26:02 --- join: Ray-work (n=Raystm2@199.227.227.26) joined #forth 11:26:31 hi Quartus 11:27:17 Hey tathi. How are things? 11:27:44 things are good 11:33:52 --- quit: Ray_work (Read error: 145 (Connection timed out)) 11:45:34 how long was I out? 11:45:39 hi tathi hi Quartus. 11:45:58 12 mins Ray. Hey. 11:46:08 yikes :( 11:46:24 I didn't _feel_ the sugar coma. 11:53:23 --- join: Quartus_ (n=Quartus_@209.167.5.2) joined #forth 11:53:24 --- mode: ChanServ set +o Quartus_ 12:25:32 --- quit: zpg ("ERC Version 5.1.3 (IRC client for Emacs)") 12:47:48 --- quit: Cheery ("Download Gaim: http://gaim.sourceforge.net/") 12:49:15 first i guess is a USB booted 16*2 char display forth system with 64 key multiplexed keypad 12:49:59 on a CPLD? 12:50:07 or is there some sort of processor on the dev board also? 12:50:25 ya http://indi.microfpga.com 12:51:39 soon the processor should be functional with the board pin out 12:51:50 I've never been able to understand analog circuitry 12:51:58 I wish I could understand digital circuitry. 12:52:11 I'd love to be able to hook up chips and get stuff to work 12:53:25 then i try a PAL display 12:53:43 256*256 pixels 12:56:27 then go for a serial i2c bus eeprom boot 12:57:38 must investigate simple usb keyring boot, but i must get usb chip to bus master 12:58:10 huh. 12:58:30 I didn't think CPLDs were big enough that you could fit a forth processor in one 12:58:38 s/forth/stack/ 12:59:00 i think the usb chip docs says it can work as usb host controller 12:59:36 it's a very simple 16 bit risc, very, very simple 13:00:04 ah, so not many registers then 13:00:21 4 plus accumulator 13:01:30 ok, I can see that 13:01:41 no micrcode either 13:02:04 I don't actually know much about designing microprocessors 13:02:10 I never understood the point of microcode at all 13:02:39 what's a "multiplexed keypad"? 13:02:46 that like a chorded keyboard? 13:03:03 micro code are like very fast hardwired subroutines giving a good cisc instruction set 13:03:57 microcode makes your code much smaller right? 13:04:11 Stop that :-) 13:04:12 each row of keys are checked in sequence for depressions, and so fewer chip inputs are required 13:04:34 jackokring: ahh 13:04:45 but it makes the processor bigger 13:06:53 dram density exceeds microcode needed boundry 13:07:27 what? 13:07:50 any microcode sequencing can be simulated for now, so as to optimize the primitives 13:08:02 ah, right 13:08:08 i have 128k sram on board 13:09:02 and allows change of microprogram for other languages 13:13:15 it could be thought of as a very simple microcode could indi assembly 13:14:58 cool running too at 66MHz 13:35:28 --- join: Raystm2 (n=NanRay@adsl-68-93-114-11.dsl.rcsntx.swbell.net) joined #forth 13:42:43 --- quit: madwork (Read error: 110 (Connection timed out)) 13:50:14 --- quit: nanstm (Read error: 110 (Connection timed out)) 13:54:50 --- join: TheBlueWizard (i=TheBlueW@ts001d0836.wdc-dc.xod.concentric.net) joined #forth 13:57:17 --- nick: Raystm2 -> nanstm 14:04:56 --- nick: nanstm -> tiff 14:08:13 --- nick: tiff -> nanstm 14:25:39 --- quit: Ray-work (Read error: 104 (Connection reset by peer)) 14:34:51 --- join: skas_wk (n=skas_wk@202.55.146.182) joined #forth 14:36:21 --- quit: jackokring (Read error: 110 (Connection timed out)) 15:07:25 --- join: earth| (n=sqrt@82-35-248-212.cable.ubr06.dals.blueyonder.co.uk) joined #forth 15:28:15 Hey. Anything exciting going on? 16:04:29 Hi Quartus. 16:04:36 oops, sex change... 16:04:42 --- nick: nanstm -> Raystm2 16:04:58 okay, that's better. 16:05:00 Hey. 16:05:02 hi Quartus 16:05:13 doing anything? 16:05:21 Finishing a new Crow. 16:05:34 * Raystm2 took a very late lunch and slipped out 40 min early. 16:05:40 Good deal :) 16:05:41 Cool. 16:05:43 ya. :) 16:06:48 I was just going over the details and patting myself on the back for an order my supervisor messed up and I fixed in a very few hours. 16:08:28 I know why it failed. I fixed it so fast the customer was very suprised. I called the follow-up to be sure it all happened as planned, and showed my supervisor how to correct the entire class of related problem. 16:08:45 It was book. 16:08:56 Very smoothe. 16:09:56 It was a lesson to the three of us, as the customer owned up to his fault in the fiasco portion. 16:11:31 It boils down to: know the fish in your pond, use a vendors part number for thier convenience but back it up with a detailed physical description and fax the purchase order to the vendor as it is a contract. 16:11:50 if the part number doesn't match the description, they will automatically call you to fix the contract. 16:13:36 if they don't call either they got it write or it's up to THEM to fix the problem. 16:13:48 write = right doh! 16:14:06 sounds like business as usual :) 16:14:16 Yep. 16:15:14 Maybe a bit of politics, as well. 16:15:31 --- quit: Shine (Nick collision from services.) 16:15:36 --- join: Shine_ (n=Frank_Bu@xdsl-81-173-255-50.netcologne.de) joined #forth 16:15:50 --- nick: Shine_ -> Shine 16:21:57 --- quit: Shine ("Chatzilla 0.9.77 [Firefox 2.0/2006101023]") 16:29:50 --- join: Shine (n=Frank_Bu@xdsl-81-173-255-50.netcologne.de) joined #forth 16:34:26 --- quit: Shine (Read error: 104 (Connection reset by peer)) 16:40:34 --- join: Shine (n=Frank_Bu@xdsl-81-173-255-50.netcologne.de) joined #forth 16:46:36 --- join: zpg (n=user@81-178-89-136.dsl.pipex.com) joined #forth 16:48:13 evening 16:48:18 Hey. 16:48:29 hi Q, how's it going? 16:48:50 Not too badly. Finishing a Crow. 16:48:51 How about you? 16:49:54 little. headed through london today, surprisingly empty given the proximity to christmas. leicester square station was practically empty when i got there. 16:50:51 I had good luck with crowds today too, they gathered behind me instead of in front of me. 16:50:52 Timing. 16:51:09 advantageous! 16:51:16 everyones inside avoiding the cloudy fog/mist probably 16:51:26 Warm day here today. No fog. 16:51:42 where are you situated? 16:52:00 Toronto. 16:52:05 nice 16:52:28 Yes, unseasonable warmth right now. 16:54:35 foggy and cold here. 17:25:20 --- join: kiah (n=kiah@c211-30-82-242.blktn4.nsw.optusnet.com.au) joined #forth 17:26:29 --- quit: kiah (Read error: 104 (Connection reset by peer)) 17:37:02 --- quit: zpg ("ERC Version 5.1.3 (IRC client for Emacs)") 17:56:46 --- quit: TheBlueWizard (Read error: 104 (Connection reset by peer)) 18:53:23 --- quit: tathi ("leaving") 18:54:43 --- quit: virl (Remote closed the connection) 20:28:36 And he's up for sale. :) 20:56:26 who is ? 20:58:18 http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=250063884729 20:59:42 The aforementioned Crow I was finishing. 21:01:02 I see. 21:02:47 Much work, many strange objects, considerable paint. 21:05:53 is there a command in forth that will give me cpu ticks? clock count? or time+microseconds? I want to time some algorithms. 21:06:09 No Standard Forth word for that, but most implementations provide something. 21:06:14 It's platform-specific. 21:06:18 ya 21:06:23 running gforth 21:07:05 Still platform-specific. What OS? 21:07:16 linux 21:07:40 Try utime. Returns a double value. 21:07:45 I'm trying to finish SICP (vid lectures) ... so I can get on with using forth and lisp. 21:08:13 utime returns a microsecond value, but the actual resolution depends on the OS. 21:08:33 Under Win2K it appears to be milliseconds, for instance. 21:09:22 ya, I know 'bout that limitation of windows. 21:09:37 I want to compare the speed of perl, c++, lisp and forth 21:09:53 utime 500 ms utime 2swap d- d. pretty reliably returns 501000 or 500000 here 21:10:03 nice 21:10:14 just what I"m looking for 21:10:15 Should do the same under linux. 21:10:33 utime 500 ms utime 2swap d- d. 503550 ok 21:10:55 Under FreeBSD it returns microseconds. 21:11:23 Getting anywhere from 500021 to 500917 21:12:02 There's a page of benchmarks that shows comparisons for BigForth and GForth against a raft of other languages, you may find that more useful. 21:12:15 utime 500 ms utime 2swap cr d- d. 21:12:15 497264 ok 21:12:15 utime 500 ms utime 2swap cr d- d. 21:12:15 498775 ok 21:12:15 utime 500 ms utime 2swap cr d- d. 21:12:16 497271 ok 21:12:18 nice 21:12:30 ya, bigforth is pathetic there 21:12:39 Pathetic? It does quite well. 21:12:49 it loses out to just about all the languages that I know (that are interpreted) 21:12:56 compare it to c++ 21:13:03 almost nothing seems to beat c/c++ 21:13:09 c++ is not interpreted. It comes in at, as I recall, about 2x to C. 21:13:13 and lisp is decently fast on some, but takes a lot of mem 21:14:23 2.2 overall against C. 21:15:20 Which is quite respectable. I suspect MPE's VFX engine falls in the 1-1.5 range relative to C. 21:15:24 It's commercial. 21:15:40 : tt1 utime 100000000 1 do loop utime 2swap d- cr d. ; redefined tt1 ok 21:15:40 tt1 21:15:40 231083 ok 21:15:40 tt1 21:15:40 242385 ok 21:15:53 Perl is far down the list, at 8.8 relative to C. 21:15:59 ya, I read the intro to forth by the mpe guy 21:16:03 Perl is known to be quite slow 21:16:50 If you factor in memory use, bigForth comes in at 1.1 vs. C. 21:17:01 sorry, 1.2. 21:17:25 Ahead of any other interpreted language, and in fact ahead of anything else besides D and Pascal. 21:18:40 You can draw up similar numbers against Gforth, it's 1.4 on the same scale. 21:18:49 These are not pathetic results. 21:19:38 suse101-l /root# date; time perl -e ' for ( $x=0; $x<100000000; $x++ ) { 1 ; };'; date 21:19:38 Wed Dec 20 00:16:08 EST 2006 21:19:38 6.932u 0.332s 0:08.35 86.9% 0+0k 0+0io 0pf+0w 21:19:38 Wed Dec 20 00:16:16 EST 2006 21:20:01 sad. 21:22:01 The Gforth:bigForth:C speed benchmarks support what I've long held, which is that threaded implementations run about 2x slower than native-code, which run about 2x slower than heavily-optimized assembler. 21:22:15 Rule-of-thumbwise. 21:24:47 The benchmarks are deceiving in one regard -- the startup time is factored in by default, and that time includes the time the Forth takes to compile the source for the bench, which isn't part of the measure for an already-compiled C executable, for instance. 21:25:41 looks like forth and c++ are just about exactly the same for my simple test.. that's good. 21:26:52 I appreciate the utime pointer. 21:27:43 Sure. 21:28:03 it's pretty neat that it takes about 2.1sec here to count toa billion. 21:28:21 pretty much the first computer program I remember... writing... as something like this. 21:28:32 10 $x=0 21:28:39 20 $x = $x + 1 21:28:55 It takes about 0.3 of a second here, under Gforth. 21:29:05 30 print $x " " 21:29:06 40 goto 10 21:29:13 q: what cpu? 21:29:31 Pentium. 21:29:58 Your Perl loop takes nearly 10 seconds. 21:30:13 T2600 here... 2.16Ghz laptop 21:30:18 let me get on my 3.0GHz desktop 21:30:22 yup 21:31:02 Gforth also builds with a gforth-fast executable that is speedier. 21:31:06 ah, hell, can't... I put it into hybernation. 21:31:32 how do you do that? 21:31:38 gforth-fast 21:32:26 down to 1.8 sec from 2.1 21:33:50 so, anyway, back to that broken basic program ... i coldn't remember the exact basic or how to print a space... maybe I used two lines... anyway, I did that before my first class, and then I checked it at lunch... I am trying to remember, but I don't think it was more than 100K or something. 21:34:02 that was on a trs80 model I ... when I was in the 5th grade -- looong time agi. 21:34:11 $x is odd syntax. 21:34:25 I wonder how many years it would take that machine (with basic) to count to 10 billion... forth just did it here in 2.4 sec 21:35:03 well, $x is basic for strings... maybe it was x=0 then x=x+1 and then print $x... not sure.. anyway, it's the basic idea 21:35:15 I did find the kbyter thing I was talking about the other day.. .I scanned it in. 21:35:22 (it's in the same trs80 basic). 21:35:32 let me power up myother puter so I can do the timing and get that image 21:35:45 x$ you mean. 21:36:03 Quartus: Hi, where can I find this page of benchmarks you speak of? 21:37:38 http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=all&calc=Calculate&xfullcpu=1&xmem=0&xloc=0&binarytrees=1&chameneos=1&message=1&fannkuch=1&fasta=1&knucleotide=1&mandelbrot=1&nbody=1&nsieve=1&nsievebits=1&partialsums=1&pidigits=1&recursive=1®exdna=1&revcomp=1&spectralnorm=1&hello=1&sumcol=1 21:37:55 wow, that's long. :) The main page is the shootout.alioth.debian.org 21:40:37 god damn.. windows sucks so much it makes me violent 21:40:43 ya, I know the page well. 21:40:52 That's for skas_wk. 21:40:55 fuck 21:41:00 I'm fgonna have to pull the plug on the pc 21:41:03 windows is so pathtic 21:41:16 Quartus: thanks 21:41:25 sure. 21:41:43 amazing 21:41:44 date; time ruby -e 'x=0;until x==100000000;x+=1;end'; date 21:41:47 just hangs 21:41:59 Ruby is extremely slow. 21:42:05 or it goes for a verry long time 21:42:08 it would seem so 21:42:15 Try it at 100 and work up. 21:42:33 lol I would and I mean was going to, but it was taking forever 21:42:56 Wed Dec 20 05:37:28 GMT 2006 21:42:56 ^C-e:1: Interrupt 21:42:56 real 1m47.174s 21:42:56 user 1m38.321s 21:42:56 sys 0m0.858s 21:42:56 Wed Dec 20 05:39:16 GMT 2006 21:43:51 Ruby comes in at 14:1 vs C in speed on the shootout page. 21:44:18 For a simple loop like that, it seems even slower. Quick test here shows it's over a thousand times slower than Gforth for an empty loop. 21:44:27 wow 21:45:18 earth - OK, now compare gforth and ruby at counting by billions to 1,000,000,000,000 21:45:49 That's not helpful, it's no more effort than counting to 1000 by ones. 21:46:17 no, I think it interesting enough of a problem on a forth with 32-bit cells. 21:46:29 or at least no less uninteresting. 21:46:37 It's not, particularly, as you can simply use double numbers, or floats. What does Ruby use? 21:46:46 Quartus - bignums. 21:47:42 A double-cell value under a 32-bit Gforth is 64 bits, which is 18446744073709551615 unsigned; a large range. 21:48:17 so, let's compare gforth and ruby at counting by 18446744073709551615 to 2*18446744073709551615 21:49:15 Which would involve a triple-cell, if the answer and not simply the number of steps is important to you; still not going to be several hundred times slower. 21:49:59 I'm sure that earth could've already grabbed a bignum package from FSL and tried this meaningless benchmark, by now, while you've been protesting. 21:50:12 Which has no relevance. 21:51:02 one benefit of Ruby does come in its extreme ease of use (and learning, especially) 21:51:16 it's not very unique in that. 21:51:38 I find it so, compared to everything else I've tried (including Forth of course) 21:51:38 ug 21:51:42 slow computers 21:52:20 earth|, did Ruby come early in your programming-language learning? 21:52:32 or 'not very special in that'. The only value of benchmarks like these is paranoia: not wanting to find yourself 5/7 through a system before realizing that you need to stop programming in your given language and start hacking on the language's implementation if you want to come out with required performance. 21:52:47 ya,just really want to do a +1 ... and compare... not really a great benchmark -- but you can get ballparks to start with. 21:52:53 lol, to be quite honest I only really started programming anything since early last year, so pretty much. 21:53:03 I gave up python due to that. 21:53:19 ok, lets see... the image is 100mb 21:53:21 earth|, I thought perhaps that was so. We programmers are like baby chickens, we tend to bond to the first language we learn. Takes some time to break the bond. :) 21:53:36 Yeah, I've been heavily into C lately. 21:53:41 more interesting benchmarks are still things that test what you can *do* with the language without pulling out your hair. 21:53:51 Ruby is just.. sort of the simple get-things-done asap project. 21:54:36 ayr: ya, so esr gave python great kudos in that regard 21:54:49 although I hear lisp faithful claim it's the best language to express ideas/solutions. 21:55:00 although a lot of what I read about forth claims the same or similar. 21:55:19 X faithful will say anything, but Erik Naggum said something very good on that. I'll fetch it. 21:56:02 I find you get the truth from those with actual expertise. The experts in C are not shy about C's deficiencies, certainly. 21:57:34 I find that most solutions need only 10% of alanguage, really. 21:57:42 set vars, access vars, update values for vars. 21:57:49 here: http://groups.google.com/group/comp.lang.lisp/msg/28cb9d4217fe6dc3?dmode=source 21:57:57 If you're writing a variable-centric implementation of a given algorithm, that may be the case, absentia. 21:58:27 As we discussed the other day, it appears to me that your experience is entirely with Algol-derivative languages. 21:58:29 ayr: thanks! 22:01:11 hmmm 22:01:19 the article was a little light on examples and facts. 22:02:55 optimization of design, as he says, is always important. A language environment that promotes testing thereby also promotes greater confidence in the code you write. Etc. 22:03:14 11MB -- b'ware --> http://www.spy.org/tmp/kbyter.jpg 22:04:47 the idea is fairly simple... almost like a poor man's rogue/hack/etc ... I want to write something like that in forth as my first program. it's small enough to get done while learning the language, etc. 22:05:35 absentia - have you studied sokoban.fs in the gforth distribution? 22:05:36 absentia, I hope you do actually learn the language, instead of just writing 'set vars, access vars, update values for vars' code in Forth. 22:06:13 ay: not yet. 22:06:41 absentia - it has an interesting design. 22:06:55 have you seen the intro to lisp that shows how to make a little text adventure game ? 22:07:03 ayr: I'll take a quick look 22:08:30 no, but I've seen a prolog version, bet that the lisp one also implements a fairly pathetic IF game by modern standards. 22:08:57 dunno. let me see if I can find it. 22:09:31 well, let me say 'I promise that it implements a pathetic IF game by modern standards'. 22:09:53 http://www.lisperati.com/casting.html 22:09:59 I'm sure it's otherwise a fine tutorial. So was the prolog. 22:12:04 yep. Unrelatedly, early Infocom implemented their games in a language people have likened to Forth or Lisp. 22:13:20 I heard it was forth. 22:13:53 no, it wasn't 'forth'. 22:15:32 Infocom's z-machine was VM with a stack. 22:16:07 the z-machine and the implementation language aren't the same thing, of course. 22:16:33 The games were implemented for the z-machine. Z-machines were written in various languages. 22:16:40 uh, no. 22:17:00 ya, I have some zmachines in c++ and stuff 22:17:14 and I can't remember if infocom finally released all their old datapacks to pd or nt 22:17:31 the games were implemented originally in the language under discussion, and then much later on in inform. The Z-Machine is just the z-machine -- the most ported VM of all time, and its implementation language is immaterial. 22:17:31 I recently came across the site that shows how to implement forth on various cpus...very very very nice. 22:17:49 McFarling? 22:17:53 that is, Infocom itself eventually produced a game using Inform. 22:18:40 --- nick: skas_wk -> skas_wk_away 22:20:36 (inform isn't at all forthy.) 22:20:43 after I load up sokoban.fs -- how do I run it ? 22:21:07 ah, sokoban 22:21:10 good guess 22:34:48 --- nick: Sukoshi -> Razor-X 22:34:55 --- nick: Razor-X -> Sukoshi 22:37:45 --- quit: TreyB (Read error: 60 (Operation timed out)) 23:05:43 --- quit: earth| ("\") 23:32:54 what do people here think of reva? 23:42:51 It's non-Standard, isn't it? 23:43:50 ah, I see it is indeed non-standard. 23:45:05 Is Reva something like RetroForth? 23:45:19 Says it's based on retro. 23:45:29 Ah. 23:48:00 absentia, I would suggest learning Standard Forth first, and worry about fringe dialects later. 23:49:47 Otherwise you may well find yourself off in the weeds, having difficulty with a small, partial, non-standard implementation with a similarly small user-base and a non-portable set of skills. 23:50:21 Once you learn standard Forth, you'll be able to easily assess dialects. 23:53:49 yes, non-standard. 23:53:51 --- quit: Shine ("Chatzilla 0.9.77 [Firefox 2.0/2006101023]") 23:53:52 seems all forths are :-) 23:54:19 That's not so. 23:56:55 While most Standard Forths have extensions, they share commonality at their cores. Systems like retroforth, reva, and other fringe variations do not share commonality with standard forths, nor even with each other. 23:57:42 In some cases it is possible to make fringe implementations compliant; I came as close as retroforth can presently come with my ANS layer -- it's almost 100%. 23:58:55 ya 23:59:15 I just saw thatreva seems like it has a lot of libs.. ffi ... nice stuff 23:59:18 has a gl demo, etc. 23:59:22 (it even worked) 23:59:43 core written in asm -- it's fast... seems like 2-5x faster than other forths 23:59:43 Demos are better when they work. 23:59:46 (but still not as fast as c_ 23:59:59 --- log: ended forth/06.12.19