00:00:00 --- log: started forth/07.08.09 00:40:56 --- nick: H4n1 -> H4ns 01:05:06 --- quit: Quartus (Read error: 110 (Connection timed out)) 01:05:28 --- join: Quartus (n=neal@CPE0001023f6e4f-CM001947482b20.cpe.net.cable.rogers.com) joined #forth 01:05:28 --- mode: ChanServ set +o Quartus 01:25:00 --- quit: tetonca ("User disconnected") 04:22:34 --- quit: Baughn ("leaving") 05:09:12 --- join: ccfg_ (n=ccfg@dsl-roigw1-fe8ade00-21.dhcp.inet.fi) joined #forth 05:10:18 --- quit: ccfg (Read error: 110 (Connection timed out)) 05:16:35 --- join: gihgi (n=irc@bzq-82-81-230-209.cablep.bezeqint.net) joined #forth 05:17:31 --- quit: gihgi (Client Quit) 05:33:58 --- join: H4n1 (n=Hans@ita4fw1.itasoftware.com) joined #forth 05:39:24 --- quit: Al2O3 () 05:40:27 --- quit: H4ns (Read error: 110 (Connection timed out)) 05:47:15 JasonWoof, your best bet for a customizable live distro which boots from a USB key is probably Damn Small Linux. I've had trememendous success with it. 05:58:27 --- join: timlarson (n=timlarso@user-12l37rb.cable.mindspring.com) joined #forth 06:14:49 gnomon: thanks for the reccomendation! 06:20:53 My pleasure. If you have any luck with it, I'd love to hear about it; and likewise if you have any problems. 06:21:32 ok, I'll note that too 06:22:02 DSL (50 megs) + GNU {core,file,find}utils (~6 megs) + GCC (~10 megs) makes for damn fine system. It breathed new life into an otherwise useless Thinkpad T42p, that's for sure. 06:22:29 There's no Forth package of any kind for it yet, though. 06:22:45 that's ok 06:22:53 hmmm... maybe I can use my old music player 06:22:59 oh, nm 06:23:12 I've been toying with the idea of creating a package for gforth (and for Lua+Kepler, and for some Scheme system), but haven't got around to it yet. 06:23:19 I stopped using it because the linux usb driver locks up when I try to transfer files 06:23:23 Oh. 06:23:27 Well, that's actually not a big deal. 06:23:37 I load everything straight into RAM and then disconnect the storage. 06:23:40 --- join: Al2O3 (n=Al2O3@216.143.252.231) joined #forth 06:23:49 As long as you get past the initial boot, you're golden. 06:24:20 I have trouble writing to the device 06:24:33 so I'd have trouble getting the OS on it in the first place 06:24:53 I'm sure I could get a 128MB or 256MB stick pretty cheap 06:25:03 Jeez, man. 06:25:09 and it'd be better if it was a normal USB stick, because then it doesn't need a battery 06:25:20 I saw 256 meg sticks going for 6 bucks the other day. 06:25:28 heh heh 06:25:52 That's way more than enough to store the distro, several major extension packages, and a whole home directory. 06:26:47 And since DSL can also run under qemu, you're off to the races even on Windows systems which you're not allowed to reboot. 06:27:43 Anyhow, that's enough distro evangelism from me. Sorry for straying off-topic. 06:28:58 lol 06:29:11 this channel is off topic more than on 06:29:12 no worries 06:29:13 Does DSL have screen? 06:29:28 sounds great 06:29:36 can't believe you can get those sticks for 6 bucks now 06:29:44 I knew if I waited long enough they'd get cheap 06:29:54 ignoring such technological improvements is much easier on my patience 06:30:10 well, I gotta run or I might be left behind 06:30:21 going to a cool spot on the river with waterfalls and such 06:30:30 Have fun! 06:30:32 gnomon: thanks again for the recomendation 06:30:40 * JasonWoof waves 06:30:41 TreyB, it does - http://distro.ibiblio.org/pub/linux/distributions/damnsmall/mydsl/testing/screen.uci.info - but it's in testing. 06:30:47 Later, JasonWoof! 06:33:36 So has anyone else read Dijkstra's EWD28? 06:37:33 Having screen makes a huge difference for me. 06:37:44 * TreyB looks for EWD28... 06:38:13 TreyB, http://www.cs.utexas.edu/users/EWD/transcriptions/EWD00xx/EWD28.html 06:38:29 Yeah, Mr. Google came up with the same link :-) 06:38:56 And I wholeheartedly agree about screen. The only reason that I haven't checked until now is that on that laptop I normally have two consoles open - one for local debugging and one SSH'd into my main system, which of course runs screen. 06:41:01 Interesting article. 06:41:56 Highly. It reminds me very much of Forth and Joy. 06:42:58 Given that it predates either, I'd say Forth reminds me of it :-) 06:43:41 --- join: lukego (n=luke@emnpdsl.bb.netvision.net.il) joined #forth 06:44:07 lukego! 06:44:09 howdy 06:44:12 How goes the Open Firmware hacking? 06:44:16 Yes, that's an impressive document. I've made mention of it in the past, but nobody seems to get too excited. :) 06:44:29 good, slowly learning some forth, writing some basic editing words 06:44:31 Quartus, I beg your pardon for coming late to the party ;) 06:44:41 Quartus: I've never seen it before. 06:44:42 He was just on the edge of a real revelation, but left it off. 06:44:49 lukego, wicked! Glad to see you're enjoying it. I'm really liking your LJ posts on the topic. 06:44:54 thanks 06:45:26 TreyB, I mostly gave up on discussing the history of programming here a while ago, never could get any traction :) 06:45:26 Yep. He got *so* close. 06:45:45 Also, for any Lisp/Scheme hackers here who happen to live in the great wild northlands of Canuckistania - Quartus, I'm looking at you - Amazon.ca has Lisp In Small Pieces for four bucks. 06:46:05 I have a copy of it here somewhere. 06:46:16 I wonder if Chuck saw it, or re-invented it out of necessity? 06:46:38 TreyB, he said he was unaware of the paper. But there was much cross-pollination in those days, even so. 06:46:42 TreyB, I was wondering the same thing. 06:46:57 Quartus, do you have a source for that remark? 06:47:04 Yes, E. Rather on c.l.f 06:47:29 If you see Moore's progression of his earliest Forths, it's clear he wasn't following a map 06:47:32 Someday I will gather the Rather posts into an enormous corpus. 06:48:10 Very interesting. 06:48:12 Quartus: I don't think he ever follows a map, and he likes it that way. 06:48:36 By the way, Quartus - are you weighing in on the Rfd threads on clf at all? 06:48:37 yes, but my point is that he didn't start with a EWD28-like system. 06:49:06 I'm watching them go by. 06:49:39 Well, everyone knew about stack-based decomposition of infix to postfix expressions by then. 06:49:56 True. Even at the time of EWD28 06:50:09 Yes. 06:50:42 Hey, speaking of which... 06:51:27 ...this probably belongs in #concatenative rather than here, but here we go: does anyone know of an implementation of dc(1) which is properly tail-recursive? Because running out of call-stack space is putting a serious crimp in writing any real programs. 06:51:58 dc? The calculator? 06:52:12 Yessir. 06:52:23 I wasn't aware anyone even tried to write real programs in it. 06:52:38 I've been doing so for years. Got an article on L:tU once because of it. 06:52:43 huh 06:52:48 Implemented Sokoban; now I'm working on a Forth system. 06:53:02 But, of course, it dies after processing a few tens of thousands of instructions. 06:53:10 I'm surprised it gets that far. 06:53:28 I was just as surprised to find it hitting that limit. 06:53:40 I figured it would either die after a couple hundred or not at all. 06:54:02 But no, consistently, it dies around 50,000 calls. Linux, Solaris, BSD. 06:54:14 probably running out of system stack 06:55:16 That makes sense. 06:55:22 Unfortunately it also hinders my efforts. 06:56:19 I suppose my next question is the obvious one. 06:56:48 "Scotch or bourbon?" 06:56:48 as in, why use a toy calculator program to write a Forth? :) 06:56:52 Ah! 06:57:13 Because it's fun. And because I can usually reimplement dc in about an hour. 06:57:42 You get dc for free in most forth systems :-) 06:58:32 Bignums? 06:58:38 if it's abitrary precision you want, there are other options, backed by working programming languages 06:58:54 Yes, but that's less fun. 06:58:55 Zettel wrote a bignum package for Forth; I've made several uses of it 06:59:13 How big is it? How fast? Did you like it? 06:59:34 not big, fast enough for my purposes. Not especially fancy, it only had the basic operations. Liked it well. 06:59:51 radix-256 digits, as I recall. 07:00:16 I didn't use it as writ, I reorganized how it uses memory. Nothing major. 07:01:40 Interesting. 07:01:41 It could certainly be expanded upon. 07:02:07 That may come into player later, when I get around to putting some time into my implement-Scheme-in-Forth effort. 07:02:09 I wrote a 30-digit calculator app for the Palm based on it. 07:07:18 --- join: Al2O3_ (n=Al2O3@216.143.252.231) joined #forth 07:08:16 --- nick: ccfg_ -> ccfg 07:14:48 Ah - big but not arbitrary, then? 07:18:49 not in my modified form 07:22:49 --- quit: Al2O3 (Read error: 110 (Connection timed out)) 07:23:56 --- quit: ecraven ("rcirc on GNU Emacs 22.0.95.1") 07:30:20 --- join: ziggurat (n=ziggurat@132.sub-70-196-175.myvzw.com) joined #forth 07:38:12 --- join: yumehito (n=yumehito@b-internet.87.103.254.70.snt.ru) joined #forth 07:51:08 --- quit: Quartus__ (Read error: 104 (Connection reset by peer)) 07:53:11 --- join: Quartus__ (n=Quartus_@205.205.50.1) joined #forth 08:10:19 --- join: H4ns (n=Hans@ita4fw1.itasoftware.com) joined #forth 08:26:20 --- quit: H4n1 (Read error: 110 (Connection timed out)) 08:52:28 --- join: H4n1 (n=Hans@ita4fw1.itasoftware.com) joined #forth 08:52:38 "0 if 1 then 2 else" is giving me a "Page Fault" -- is this expected? can I not add to the stack from inside if-then-else? 08:53:06 oh sorry nevermind :) 08:55:53 --- quit: Quartus__ ("used jmIrc") 08:56:07 --- join: Quartus__ (n=Quartus_@205.205.50.1) joined #forth 09:02:01 You found your problem? 09:02:41 yes, syntaxo :) 09:09:09 Nasty Mr. Moore, putting the 'then' at the end and all ;-) 09:09:26 --- quit: H4ns (Read error: 110 (Connection timed out)) 09:17:02 --- quit: yumehito (Read error: 110 (Connection timed out)) 10:04:02 I am a fan of the 'then' 10:32:18 --- quit: timlarson (Read error: 110 (Connection timed out)) 10:32:26 --- join: timlarson__ (n=timlarso@user-12l37rb.cable.mindspring.com) joined #forth 10:32:59 --- quit: mem4tim (Read error: 110 (Connection timed out)) 10:33:07 --- join: forther (n=forther@207.47.34.100.static.nextweb.net) joined #forth 10:36:11 I don't have my forth book with me so please excuse the rtfm'ish question :) how can I access a word in a different vocabulary from a definition? I'm in the forth vocab and I want to use a word in the hidden vocab, just once in a colon definition 10:42:53 --- join: slava (n=slava@CPE0080ad77a020-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 10:42:53 --- mode: ChanServ set +o slava 10:43:15 --- nick: H4n1 -> H4ns 10:59:20 --- quit: timlarson__ (Read error: 110 (Connection timed out)) 11:07:50 --- quit: lukego () 11:35:37 --- join: Al2O3 (n=Al2O3@216.143.252.231) joined #forth 11:40:17 --- quit: Al2O3 (Client Quit) 11:40:32 --- quit: madgarden (Read error: 110 (Connection timed out)) 11:42:16 lukego, what Forth are you using? 11:42:20 oops 11:42:25 he left 11:43:00 i'm interested, too 11:43:38 he's using the olpc boot monitor forth afaik 11:44:31 from your question i take it that there is no standard way? 11:52:29 --- quit: Al2O3_ (Connection timed out) 12:00:01 --- quit: ziggurat ("This computer has gone to sleep") 12:03:04 --- join: ziggurat (n=ziggurat@132.sub-70-196-175.myvzw.com) joined #forth 12:03:50 --- join: Al2O3 (n=Al2O3@216.143.252.231) joined #forth 12:03:59 --- join: timlarson__ (n=timlarso@user-12l37rb.cable.mindspring.com) joined #forth 12:30:25 --- join: ecraven (i=nex@eutyche.swe.uni-linz.ac.at) joined #forth 13:31:16 h4ns, there is, but his forth may have its own vocabulary mechanism 13:31:45 --- quit: ecraven ("bbl") 13:47:00 what would be the standard way? 13:47:26 i seem to remember to have seen something like it, but i can't remember. 14:22:42 --- nick: timlarson__ -> timlarson 14:25:36 --- quit: ziggurat (Read error: 110 (Connection timed out)) 14:25:54 --- join: Al2O3_ (n=Al2O3@216.143.252.231) joined #forth 14:28:12 hey h4ns. Sorry for the lag. The Standard provides a complete set of wordlist words, on which vocabularies/modules are trivially constructed. 14:28:39 they can be used in the raw, as it were, but it's more common to find them abstracted 14:29:38 i understood the question as: i am in a word definition and i want to use, in a new word defintion, a wird from a vocabulary that i don't have on my search list, how would i do so? 14:30:31 which raises the question of what his Forth means by 'vocabulary' and what words it provides to facilitate them. 14:30:51 ah, ok. now i understand. 14:32:06 if he had said wordlist, and that his Forth is Standard, the question is perhaps more directly answered, though more information would still be required. 14:32:38 i, for myself, have a wordlist 14:32:49 broadly speaking, you temporarily add the wordlist in question to the search order. 14:32:53 and my forth is rather standard, i'd think. 14:33:39 yeah. would i need to write myself a new word to do that? or is there something that does it already? i mean, i know that i can create a word that executes at compile time, so it would not be that difficult i guess. 14:34:27 if you have only the standard wordlist words, you'd do an incantation involving get-order and set-order 14:35:39 whether you do that outside of the definition, within [ ] words, or via an immediate word is entirely up to you. 14:36:00 :) 14:36:48 i guess doing things like these are just something you'd do yourself in forth, whereas in other languages you just couldnt. 14:37:44 I make a lot of use of a simple module facility built atop the search-order stuff. 14:41:01 --- quit: Al2O3 (Connection timed out) 14:47:42 --- join: jns_ (n=jens@p57B048D4.dip.t-dialin.net) joined #forth 14:52:00 --- quit: Al2O3_ (Client Quit) 15:05:30 --- quit: jns (Read error: 110 (Connection timed out)) 16:16:57 --- quit: H4ns (Read error: 110 (Connection timed out)) 16:27:24 --- join: Al2O3 (n=Al2O3@12.144.193.67) joined #forth 16:28:11 --- quit: Al2O3 (Client Quit) 16:28:14 --- join: Al2O3 (n=Al2O3@12.144.193.67) joined #forth 16:40:41 --- join: H4ns (n=Hans@70.91.193.41) joined #forth 16:40:59 --- join: madgarden (n=madgarde@bas2-kitchener06-1096751183.dsl.bell.ca) joined #forth 16:44:23 --- join: H4n1 (n=Hans@70.91.193.41) joined #forth 16:58:31 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 16:58:31 --- mode: ChanServ set +o tathi 16:59:12 --- quit: H4ns (Read error: 110 (Connection timed out)) 17:29:59 --- quit: JasonWoof (Remote closed the connection) 17:31:26 --- join: JasonWoof (n=jason@c-24-63-217-45.hsd1.ma.comcast.net) joined #forth 17:31:27 --- mode: ChanServ set +o JasonWoof 18:01:39 --- quit: forther ("Leaving") 18:13:59 --- join: jns__ (n=jens@p57B0502B.dip.t-dialin.net) joined #forth 18:31:52 --- quit: jns_ (Read error: 110 (Connection timed out)) 18:34:19 --- quit: tathi ("leaving") 19:12:37 --- join: tetonca (n=chris@66.155.140.198) joined #forth 19:32:48 --- join: mem4tim (n=timlarso@user-12l37rb.cable.mindspring.com) joined #forth 19:34:43 --- join: snowrichard (n=richard@65.125.86.66) joined #forth 19:35:13 --- part: snowrichard left #forth 20:48:31 --- quit: tlockney ("leaving") 20:48:52 --- join: tlockney (n=tlockney@71-32-247-246.ptld.qwest.net) joined #forth 21:42:59 --- quit: Quartus (Read error: 110 (Connection timed out)) 21:54:44 --- quit: jns__ (Read error: 113 (No route to host)) 23:59:59 --- log: ended forth/07.08.09