00:00:00 --- log: started forth/10.07.08 00:01:55 --- quit: gogonkt (Quit: leaving) 00:02:28 --- join: gogonkt (~info@59.38.201.16) joined #forth 00:07:46 --- quit: ygrek (Ping timeout: 245 seconds) 00:08:41 hey 00:41:59 --- join: Amanita_Virosa (~jen@96.236.17.168) joined #forth 00:54:21 hey 00:54:57 Oh! 00:55:09 Amanita_Virosa: long time! 01:07:43 hi :) 01:07:44 indeed 01:08:31 Do you still use Forth anywhere? 01:08:45 yes 01:08:52 in fact, i'm writing a new one 01:08:58 another one, i mean 01:08:59 Oh. 01:09:02 Yet another one! 01:09:11 oh i've written so many now i'm losing track 01:09:21 this one is rather perverse... it's x86-16 01:09:21 And I'm trying to fix and improve pForth. 01:09:23 real mode 01:10:40 with everything tucked away in different segments, and an almost-BASIC-style string GC 01:11:00 (which can be used for strings, or other types of data... i can load disk sectors into it too) 01:11:25 Shouldn't EFI do everything in PM already? 01:11:41 (I don't know myself, no time to check it.) 01:12:58 EFI? i've never used a machine with anything other than regular BIOS types. 01:13:30 i'm actually writing this FORTH for use as a bootloader for a microkernel OS... 01:13:38 Ah. 01:13:38 it needs a lot of hand-holding to become operational 01:16:15 And I have decided that I'd better go with more interesting things than writing yet another operating system. 01:16:55 i've been doing a lot of work on system libraries the past while... 01:17:02 tons of fun things there 01:17:49 probably my biggest project in that department is a data model layer... it can form the backbone of all sorts of script languages, and it has some unique features 01:17:50 I've joined NetBSD, now I know all the fun. 01:18:10 it's completely lock-free outside the GC, for one 01:18:11 cool 01:19:56 BTW, have you ever written to John Sadler (of FICL fame)? 01:20:18 no? 01:20:26 That's pity. 01:21:02 I'd take over FICL development, but he doesn't reply my letters this year. 01:21:19 i've never actually used FICL 01:21:33 He replied my letters 2 or 3 years ago, but not this year. 01:22:00 i'm planning to write a simple FORTH-like language using my data model... 01:22:20 as the first test of the script-backing functionality 01:22:28 it does behave a bit unusually in many ways though 01:22:34 Why "Forth-like" rather than just Forth? 01:23:02 well i can stay pretty close, language-wise, to Forth, but the data model is completely different. 01:23:16 Could you elaborate on the latter? 01:23:23 among other things, strings, lists, dictionaries, big integers, floats, etc are all first-class types 01:23:28 Since you mention scripting, I'd join the efforts. 01:23:49 I have similar thoughts. 01:24:00 right now it's still a research project that i'm working through the details of. 01:24:14 I have reached the state when I can run 64-bit pForth on 32-bit systems. 01:24:23 cool 01:24:38 This makes possible tricks like John Doty mentioned years ago. 01:25:07 i miss the reference 01:25:28 In addition this makes it possible to use, e.g., object model like 01:25:46 pairs object pointer - class pointer. 01:25:57 ah okay 01:26:01 Well... It will take time. 01:26:42 In short, Doty unified integer and floating point stacks as single 64-bit stack. 01:27:10 ohhh i see. 01:27:27 Yes. 01:27:48 And with 64-bit stack on 32-bit system, it is possible to use something like type tags. 01:27:58 this one does some stack tricks that you wouldn't believe. 01:28:23 i mean clearly the stack will contain only object pointers... and it'll itself be a list object 01:28:36 but the funny part is that, thanks to a particularly interesting quirk of my data model, copying lists is cheap. 01:28:39 very cheap. 01:28:47 so... for doing something like exception handling, i can copy *the stack*. 01:28:47 Oh, you're inveting SECD machine! 01:29:14 Yes, I thought about it as well. 01:29:43 ah, but mine isn't constrained by functional language behavior, nor the O(n) behavior of linked lists. 01:30:02 SECD isn't about functional languages, it's just VM model. 01:30:06 it *is* turning out to have a lot of the effects of SECD 01:30:28 well, the idea of SECD is that you can't really modifiy your past state... 01:30:33 Anyway, those are minor details. 01:31:02 more or less. 01:31:04 I understand your ideas, I have similar ones. 01:31:25 But I'm working on them from the Forth side, 01:31:45 well really, the big innovation of my data model is that it's lock-free. 01:31:49 I'm pushing Phil Burk, and I'd like to get in touch with John Sadler, if he's alive. 01:32:12 --- join: ams (ams@Psilocybe.Update.UU.SE) joined #forth 01:32:17 and it doesn't impose "never modify" semantics. 01:32:40 Last time I read about lock free algorithms, they put too much effors for too little gain. 01:33:35 i made the one pragmatic decision of not trying to add a lock-free GC, although it does appear that it could be added later nonetheless. 01:33:44 so the GC has a global stop-the-world lock 01:33:46 but that's the only one 01:34:17 in the case of my design, the biggest penalty of being lock free is high memory churn 01:38:47 --- quit: LionMadeOfLions (Ping timeout: 260 seconds) 01:38:50 Yeah, that's true. 01:40:00 but i used some of that to my advantage... 01:41:07 --- join: LionMadeOfLions (~LionMadeO@70.114.156.242) joined #forth 01:42:38 all list operations are cheap as a result. 01:52:18 anyhow... i'm still psyched about my first token-threaded FORTH. 01:52:31 and i learned the hard way that 255 words is never enough heh 01:52:39 well... not so much "the hard way", i'm only up to 174... 01:52:41 but still 01:53:12 I have around 1000 pages of Forth source and counting. 01:53:39 cool, that's a fair bit 01:53:53 i do believe i'm well into the hundreds of pages by this point though 01:55:01 not including other forth-like things, like when i quickly whipped up an RPN calculator to test my bigint library, or the C-implemented optimizing FORTH compiler i did back in my university days. 01:56:38 i find that after writing FORTH stuff for a while, it changes the way you code. 01:56:46 as i say, "FORTH in any language". 01:58:26 * ASau` can write Fortran, Forth and Lisp in any language. 01:59:59 my any-language is most often C, to be honest... but there's a certain FORTH flair to my code now 02:00:25 my current FORTH is written in itself 02:01:03 it's funny... i have this assembly file that contains the works... and inside the file, many of the words are just written in FORTH 02:01:22 so i pass the assembly file through an awk script to make another awk script, which i then run the assembly file through again to make a new assembly file 02:01:27 which i can then assemble with nasm 02:01:52 but the end result is that it really is, essentially, "written in itself". 02:13:38 --- quit: Amanita_Virosa (Quit: Leaving) 02:50:20 --- join: ygrek (debian-tor@gateway/tor-sasl/ygrek) joined #forth 04:01:06 --- quit: ygrek (Ping timeout: 245 seconds) 06:41:20 --- quit: gogonkt (Ping timeout: 260 seconds) 06:42:59 --- join: gogonkt (~info@116.5.83.232) joined #forth 07:01:22 --- quit: segher (Quit: This computer has gone to sleep) 08:14:17 --- quit: gnomon (Ping timeout: 240 seconds) 08:14:45 --- join: gnomon (~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com) joined #forth 08:31:04 --- part: TR2N left #forth 08:57:56 --- join: ygrek (debian-tor@gateway/tor-sasl/ygrek) joined #forth 09:10:09 --- quit: probonono (Ping timeout: 240 seconds) 09:11:57 --- join: probonono (~User@unaffiliated/probonono) joined #forth 09:52:20 --- join: kar8nga (~kar8nga@78.104.80.239) joined #forth 10:02:21 --- quit: ygrek (Ping timeout: 245 seconds) 10:43:20 --- quit: kar8nga (Read error: Connection reset by peer) 10:44:33 --- join: qFox (~C00K13S@5356B263.cable.casema.nl) joined #forth 11:09:12 --- join: ygrek (debian-tor@gateway/tor-sasl/ygrek) joined #forth 11:42:46 --- join: arquebus (~shintaro@189.221.9.134.cable.dyn.cableonline.com.mx) joined #forth 11:47:13 --- join: segher (~segher@84-105-60-153.cable.quicknet.nl) joined #forth 11:47:25 --- join: luptenschteiner (~User@unaffiliated/probonono) joined #forth 11:48:36 --- quit: probonono (Ping timeout: 245 seconds) 11:48:47 lol this code im working on is awesome. coded by some TRUE pro's 11:49:02 if(foo) { return x } else { return y } return z; 11:50:00 hey 11:50:12 :) 12:06:06 --- part: arquebus left #forth 12:44:48 --- quit: crc (Ping timeout: 248 seconds) 12:46:36 --- join: crc (~charlesch@184.77.185.20) joined #forth 13:55:41 --- quit: Snoopy_1611 () 13:55:54 --- join: Snoopy_1611 (Snoopy_161@dslb-088-069-151-193.pools.arcor-ip.net) joined #forth 13:57:51 --- quit: Snoopy_1611 (Client Quit) 13:58:08 --- join: Snoopy_1611 (Snoopy_161@dslb-088-069-155-083.pools.arcor-ip.net) joined #forth 14:06:56 --- quit: ygrek (Ping timeout: 245 seconds) 14:14:44 --- quit: qFox (Quit: Time for cookies!) 17:05:23 --- join: muzgo (~iru@li22-113.members.linode.com) joined #forth 17:37:00 --- join: TR2N (email@89-180-179-16.net.novis.pt) joined #forth 17:53:21 --- quit: muzgo (Quit: leaving) 18:13:57 Hello all. 18:24:09 --- nick: luptenschteiner -> probonono 18:29:16 hey 18:29:30 What's up? 18:29:40 playing starcraft 2 18:30:37 what're you doing? 18:32:48 Trying to decide what to get/make for dinner. 18:38:31 nice. 18:38:45 I think I'm making pizza tonight. 18:38:50 speaking of which: I need to make the dough. 18:39:16 Mmm, I made baked spigetti the other night. 18:39:22 I have been eating it for 3 days. 18:39:24 Made way too much. 19:32:05 --- join: Amanita_Virosa (~jen@96.236.17.168) joined #forth 19:32:29 evenin. 19:51:36 --- quit: Amanita_Virosa (Quit: Leaving) 21:19:32 hey 21:36:45 --- quit: crc (Remote host closed the connection) 21:36:59 --- join: crc (~charlesch@184.77.185.20) joined #forth 22:10:50 --- join: ygrek (debian-tor@gateway/tor-sasl/ygrek) joined #forth 23:31:14 good noon 23:52:17 hey 23:53:38 --- quit: gogonkt (Remote host closed the connection) 23:53:52 --- join: gogonkt (~info@116.5.83.232) joined #forth 23:59:59 --- log: ended forth/10.07.08