00:00:00 --- log: started forth/03.09.07 00:29:49 --- quit: I440r (Connection reset by peer) 00:29:58 --- join: I440r (~I440r@sdn-ap-008txhousP0188.dialsprint.net) joined #forth 02:13:37 well ther wer only EIGHT HUNDERD viruses on my laptop 02:16:05 it should learn to practice safe sex 02:41:45 yup 03:02:43 Hi 03:14:14 hi 03:16:41 I440r: 800 different types? 03:17:24 I440r: coz the actual number is indifferent. in a virtual world its easy 2 multiply 03:18:39 it's fairly easy to multiply in the physical world also 03:18:52 especially if you're a virus 03:30:12 NO 03:30:19 just 800 infected files 03:30:25 2 different types 03:31:06 but still. 99% of those 800 were in a direcotry i didnt create and must have been downloaded behind my back 03:33:14 I440r: but it didnt happen on a *nix type os, did it? 03:36:08 NO :) 03:36:11 argh 03:36:15 damned capslock :P 04:01:37 --- quit: I440r (Read error: 104 (Connection reset by peer)) 05:26:28 --- quit: fridge (Read error: 60 (Operation timed out)) 05:30:46 --- join: mur- (murr@baana-62-165-188-134.phnet.fi) joined #forth 05:31:11 --- nick: mur- -> mur 05:38:05 --- join: snow_richard (snow_richa@207-254-199-54.dialup.shv.shreve.net) joined #forth 05:38:51 hello. haven't been able to get on in a while. moved. 05:39:17 filed divorce. living in a veteran's home. 05:39:20 * mur moved but havne't had computer in new place so no graphics nor code nor irc 05:39:53 i've heard that divorces are always hard 05:40:07 was wondering if perchance anyone had saved tarball of my michael code. my website went away 05:41:05 divorce stressfull but it will be good when it is over. 05:41:06 website shoudl have moved too 05:41:30 they couldn't find me it happended to have been time to pay for the next year 05:42:03 which one wanted divorce or both? 05:42:09 i just got the net yesterday. 05:42:35 I needed divorce to keep my sanity and sobriety 05:42:45 i have had internetconnection for 2 months but no computer to use it :P 05:42:55 decided to stop drinking and doing drugs. 05:43:04 except for prescriptions 05:43:05 * mur doesn't even do coffee :) 05:43:20 not to mention alcohol or smoking 05:43:38 cigarettes I was able to quit after a week of being locked up in the psych ward :) 05:43:48 can't smoke in that hospital 05:43:58 smoking is stupid anyways 05:44:05 most stupid addiction there is 05:44:14 was making me ill physically too 05:44:30 * mur dislikes strong smells 05:44:37 but I don't want to give up my computer addiction and like my coffee too :) 05:45:02 :) 05:45:12 gave up my right to drive to enter this treatment facility 05:45:17 addicition becomes addiction when you can't quit even you wanted 05:45:37 drivers license i never wanted for ethical reasons 05:45:58 oh you were the bicycling dude :) 05:46:11 i used to ride bike all the time before I smoked 05:46:32 heh, i use excelent public transportation 05:46:32 and before I had car of course 05:46:41 helsinki has very good public transportation 05:46:50 and sometimes i walk 05:47:02 well there are bus system here in shreve port but I am kind of under psychiatric care and need escort :) 05:47:23 helsinki has also local trains, metro and trams 05:47:23 but they are letting me go to church today 05:47:33 good 05:48:08 finland? 05:48:31 it sounds like pretty scenery. 05:49:11 what sounds scenery? 05:49:26 you have nice places to go visit in finland? 05:49:35 lakes? mountains? 05:49:43 100000 lakes i think 05:49:59 not many mountains 05:50:05 very cool I like to sit near water 05:50:12 relaxing 05:50:22 stabile area, no earthquakes, volcanoes or storms 05:51:15 there are lot of very small lakes 05:51:38 I spent several years on the ocean when I was in the Navy 05:52:19 have never owned my own boat though 05:52:32 heh 05:52:36 * mur was also in navy 05:52:44 though as conscript who hates army system :) 05:53:40 first i was commanded to army and then i was commanded to main HQ and then to naval war school (part of navy) so i dont know really anything about boats nor land utiliites 05:53:40 well hey I guess I remember enough about how that Michael code was done to recreate it so no big loss. Usually its much better program the third or fourth time I recode it :) 05:54:07 it ought to become better when recoding with motivation 05:54:17 then one knows what one is doing and can do better and clearer code 05:54:45 I want to write the code with an aim to using it as an example in a programming course I want to write. 05:54:56 so yes style is important 05:55:13 and more one thinks about something, more one sees aspects in it 05:55:32 but with no real information that usually becomes no real results :/ 05:56:16 hey I need to refill coffee brb 05:56:22 ok 05:58:14 I could pick one application to code with the language to test if it is reasonably complete such as 05:58:23 a financial records system or something. 05:59:32 almost 7:00 am. Church in about three hours. 06:00:02 I am learning to relax. after 13 years with insane woman wanting something every three minutes it is taking a while. 06:01:28 :/ 06:01:32 probably need to get off of here for a little while. 06:01:41 no problem 06:01:41 --- quit: snow_richard () 07:14:41 --- nick: mur -> mur_BBL 10:16:54 --- join: SDO_AMD (~SDO_AMD@co-trinidad1a-42.clspco.adelphia.net) joined #forth 10:19:32 --- nick: mur_BBL -> mur 10:38:33 --- quit: mur ("Murr.") 10:46:24 --- quit: SDO_AMD ("Vision[0.9.6-0203]: i've been blurred!") 11:02:49 --- join: jhoger (~john@dsl081-088-222.lax1.dsl.speakeasy.net) joined #forth 11:03:48 exit 11:03:52 --- part: jhoger left #forth 11:25:43 --- join: gilbertdeb (~gilbert@fl-nken-u2-c3b-178.miamfl.adelphia.net) joined #forth 11:34:27 --- join: I440r-wor (~x@sdn-ap-010txhousP0067.dialsprint.net) joined #forth 11:36:07 --- nick: I440r-wor -> I440r 11:38:50 morning i440 11:40:02 hi Suzanne 11:42:18 hi :) 11:42:29 hi gilbertdeb too :) 11:42:52 whats new in #forth ? 11:43:36 not much, ive been doing almost nothing on my forths 11:43:48 i got an interesting word tho that im going to STEAL from work 11:43:53 ]# 11:43:57 instead of doing 11:44:05 [ x y z z y + ] literal 11:44:10 inside a : def you do 11:44:16 [ x y z z y ]# 11:44:25 much neater 11:44:35 * Suzanne is still doing some scheme stuff, i have to admit :P 11:44:43 lol 11:44:46 your fired!!!!!!!!!! 11:44:55 i never looked at scheme 11:46:33 --- join: gilbertbsd (~gilbert@fl-nken-u2-c3b-178.miamfl.adelphia.net) joined #forth 11:49:21 i440, its alright, better than lisp :) 11:49:44 Suzanne which book are you reading for scheme? 11:49:58 gilbert, i'm not 11:50:04 * Suzanne doesn't use books for learning, very often 11:50:13 Oh? how are you doing it then? 11:50:40 just read the standards for the functions, and try things in an interpreter :) 11:50:56 read the standards? 11:51:18 are you able to read the semantics stuff at the end of the standards too? 11:51:40 yeah, in scheme's case R5RS 11:51:46 gilbert, mostly, yes 11:51:50 wow! 11:51:54 Teach me! 11:52:04 gilbert, heh, its just an experience thing 11:52:11 Oh. :| 11:52:13 understanding BNF isn't necessarily a bad thing tho :P 11:52:25 I'm not talking about the bnf part per se. 11:52:36 oh thers a bnf parser for forth on www.forth.org somewhere 11:53:03 s/per se// 11:55:05 Suzanne the 'abstract syntax' part. 11:55:18 on pg 41 of the .ps 11:56:37 the whole of section 7.2 11:57:15 dunno, haven't seen the .ps 11:57:38 oh, i see what you mean about section 7.2 11:57:56 its sort of a mutation of 'Z' syntax 11:58:10 Now I've gotta ask. 11:58:12 What is Z? 11:58:16 a spec language? 11:58:26 gilbert, Z is a spec language, yes, by IBM 11:58:33 gaaaaa 11:58:36 its a bit like UML in some ways, but different in others 11:58:51 I"m never going to decipher this stuff am I? 11:59:13 you should be able to, eventually :) 12:00:07 Suzanne do you know lambda calculus? 12:00:57 not really ;/ 12:01:07 i sort of slept thru those lectures at uni :/ 12:01:22 I'm going to have to teach myself this stuff then. 12:01:34 it is proving to be a will-o-the-wisp 12:01:46 just when I think someone knows it and is going to reveal its secrets ... 12:02:03 http://www.mactech.com/articles/mactech/Vol.07/07.05/LambdaCalculus/ 12:02:08 might be easy enough to follow 12:02:28 so why are there whole books on it? 12:03:03 * Suzanne shrugs 12:03:07 --- quit: gilbertdeb (Read error: 110 (Connection timed out)) 12:03:13 why are there 1000 'learn VB in 21 days' books ? :) 12:03:20 hahahahah 12:03:32 oh I just noticed I had quit irc. 12:03:39 what on earth is happening! 12:04:46 btw, if you want to *learn* scheme, i would probably suggest PLT-Scheme/DrScheme 12:05:14 although it's lacking the array functions for some reason ;( 12:05:24 I'm using SICP. 12:05:42 with the mit-scheme thingy 12:05:46 *nod* 12:06:01 i use Emacs + guile most of the time ;) 12:06:13 I can't stand guile. 12:06:20 a really nice one is umbscheme 12:06:29 it displays your definitions for you . 12:06:36 ah 12:07:03 sort of like 'see' in forth. 12:07:20 * Suzanne nods 12:07:52 the only thing that annoys me about scheme.... 12:08:00 is that LispMe doesn't do standalone compilation :/ 12:08:13 and i don't think libchicken will build for PalmOS 12:08:34 heheh. libchicken? 12:08:43 chicken is a Scheme->C compiler 12:09:32 ie, you do: chicken mycode.scm ; gcc -o mycode mycode.c -lchicken 12:10:16 even if it did build for palm, the static version of libchicken is fscking huge, like 700KB 12:10:18 a retargetable scheme ? 12:10:23 or whats the word it is they use? 12:10:44 * Suzanne shrugs 12:10:53 i'm not up on my buzzword compliance really :/ 12:11:06 tsk tsk tsk. 12:11:12 what ARE the latest buzzwords anyway? 12:11:22 tbh tho, i'm not sure chicken offers any real advantage over guile 12:11:38 does guile do scheme->c as well? 12:11:44 sort of 12:12:34 guile consists of the program 'guile' and the backend libguile which you can link against to get scheme interpretation/compilation(in the same sense as forth 'compilation') from any app 12:13:01 guile is probably slower, but has the advantage that gnome depends on it, so most 'desktop' linux/unix systems will probably already have guile/libguile installed already 12:13:25 guile 12:13:25 bash: guile: command not found 12:13:25 gilbert@kendall:~$ 12:13:43 hmmm, what happens if you do guile ? 12:13:59 anyway, as i said 'probably' :) 12:14:05 nothing. 12:14:09 odd 12:14:13 guile: nothing appropriate. 12:14:15 Gnome most definitely depends on it 12:14:45 gnome: /etc/gnome /usr/share/gnome /usr/share/man/man1/gnome.1.gz 12:15:00 try 'locate guile' 12:16:22 it is there. 12:16:46 84 12:17:57 that was 'locate guile | wc -l' 12:18:25 * Suzanne nods 12:18:40 maybe you just have libguile somewhere *shrug* 12:42:39 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 12:50:28 --- quit: I440r (No route to host) 13:12:45 --- join: I440r-wor (~x@sdn-ap-005txhousP0199.dialsprint.net) joined #forth 13:13:38 why the fuck does mirc default to my WORK nick grrr 13:13:43 --- nick: I440r-wor -> I440r 13:14:01 --- nick: I440r -> I440r_ 13:14:14 nonononono 13:14:21 fucking stupid mirc 13:14:27 --- nick: I440r_ -> I440r 13:32:32 --- quit: gilbertbsd ("Told you I could quit any time!") 13:52:30 y0 all 13:53:31 i used this over mirc: http://www.xircon.com/pub/xircon/XiRC10B4.EXE 13:54:05 I440r: just use XChat and/or BitchX. they're both great, and both work in windoughs 13:54:39 i use epic, bitchx has these annoying bugs 13:54:53 * arke has never used epic before 13:55:04 its based off ircii, just like BitchX 13:55:08 epic is great 13:55:48 ill take a look then. 13:57:51 --- join: jamc (~user@as3-6-8.asp.s.bonet.se) joined #forth 13:58:03 downside si you need a script for it to make it look 'pretty like bitchx' 13:58:11 upside is theres quite a bit out there ig uess 13:58:47 :) 13:59:30 --- quit: I440r (Connection timed out) 14:34:29 --- join: TheBlueWizard (TheBlueWiz@207.111.96.88) joined #forth 14:34:29 --- mode: ChanServ set +o TheBlueWizard 14:34:35 hiya all 14:37:41 Hi TheBlueWizard 14:38:26 hiya Robert 14:38:33 seen mur today? 14:38:38 Nope. 14:38:43 k 14:38:55 Time for The Simpsons! 14:39:27 heh 15:01:01 --- quit: SDO (Connection timed out) 15:21:42 --- part: jamc left #forth 15:42:00 gotta go...bye all 15:42:32 --- part: TheBlueWizard left #forth 16:03:04 --- quit: rpc (leguin.freenode.net irc.freenode.net) 16:03:35 --- join: rpc (~rpc@global.whiteh8.net) joined #forth 16:04:07 SPLITS! 16:35:57 --- join: obo (~rdacker@adsl-64-161-200-150.dsl.snfc21.pacbell.net) joined #forth 16:38:38 --- quit: obo (Client Quit) 16:44:15 --- join: JP (~japeters@adsl-67-116-51-69.dsl.sntc01.pacbell.net) joined #forth 16:44:26 Hi 17:02:29 --- join: SDO (~SDO@co-trinidad1a-42.clspco.adelphia.net) joined #forth 17:07:43 Is this a palce for only serious talk of Forth or is it a bit easier, or just no activity unless it is at the black belt level? I am just wondering since I am new here but not new to Forth. 17:10:15 from what i've seen so far, it's a pretty chill channel 17:18:52 JP: we're pretty easy going. what's on your mind? 17:22:44 --- join: I440r (~x@sdn-ap-009txhousP0395.dialsprint.net) joined #forth 17:38:07 rrrrg. perl is annoying 17:43:26 JP, it is a forum for whatever you want to talk about FORTH, and we have a tendancy to talk about other stuff too. 17:51:02 That is nice, I will talk more later. I am converting a program from F83s to Win32Forth. Distracted today by having bought a new notebook that is wireless. We set it up for hte network and now VNC quit working on that XP machine. 17:55:05 hi jp :) 17:55:11 convert it to isforth instead :) 17:59:39 I would like to data mine comp.lang.forth by modifying the spamBasyian filter but it is programed in Python 18:32:19 --- join: fridge (~fridge@dsl-203-33-162-99.NSW.netspace.net.au) joined #forth 18:34:39 --- join: proteusguy (~username@216.27.161.121) joined #forth 18:47:56 --- join: I440r_ (~x@sdn-ap-009txhousP0395.dialsprint.net) joined #forth 18:48:01 --- quit: I440r (Read error: 104 (Connection reset by peer)) 18:50:44 --- join: I440r (~x@sdn-ap-009txhousP0395.dialsprint.net) joined #forth 18:50:46 --- quit: I440r_ (Read error: 54 (Connection reset by peer)) 18:56:38 JP: python is a pretty cool language. I reccomend learning at least the basics if you have time. 19:03:58 --- join: I440r_ (~x@sdn-ap-009txhousP0395.dialsprint.net) joined #forth 19:04:00 --- quit: I440r (Read error: 54 (Connection reset by peer)) 19:45:30 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 19:45:30 --- mode: ChanServ set +o kc5tja 19:47:42 wb kc5tja :) 19:50:04 re 19:50:30 * kc5tja is still looking for money-making opportunities in the relatively near term. 19:51:40 --- join: I440r (~x@sdn-ap-009txhousP0395.dialsprint.net) joined #forth 19:52:14 --- quit: I440r_ (Read error: 104 (Connection reset by peer)) 19:56:22 kc5tja: are you doing any marketing? 19:57:19 At the present moment, I can't. 19:57:51 I have no telephone (and roommates aren't comfortable with me using their personal line for my business, plus it's a bit of a hassle for me anyway), though that'll be rememdied soon, I hope. 19:58:08 Moreover, I can't afford the reproduction costs for creating flyers and whatnot. 19:59:02 I'm thinking of targetting a severely specialized market though -- computer consultation services for college students. 19:59:24 I probably won't make much, but I'm guessing that my new customer sign-up rates would increase. 19:59:37 As long as I can afford to pay rent, though, that's all I *really* care about. 20:33:51 money-making opportunities is a bad word 20:33:55 phrase 20:33:59 whatever the case, it's naughty 20:34:19 Not when you need to pay rent and auto insurance. 20:34:35 And you've been unemployed for pretty close to a year. 20:34:40 yes, well if you search for "money-making opportunities" on google, you've a better chance of losing your rent than paying for it 20:34:57 Dude, I'm not that stupid. 20:35:08 Spam don't work on me. 20:35:08 well your phrase offended me 20:35:17 Deal with it. 20:35:22 I'm trying 20:35:32 A money-making opportunity is just that: an opportunity for me to earn some income. 20:35:58 --- join: I440r_ (~x@sdn-ap-009txhousP0395.dialsprint.net) joined #forth 20:36:27 --- quit: I440r (Read error: 104 (Connection reset by peer)) 20:38:05 * kc5tja is thinking of narrow his company's focus to target college students, and to offer tutoring in using Windows and Microsoft Office products effectively. 20:38:23 Maybe do the occasional student website too. 20:39:11 --- quit: I440r_ (Client Quit) 20:45:23 kc5tja: nice idea :) 20:45:28 advertising for that should be easy. 20:45:50 Well, it certainly is a narrower niche than what I was going for, so it should be more cost effective marketing. 20:46:10 photocopy 50 sheats and spread them around campus with pull-off tabs on how to contact you. 20:46:25 Now I just have to wait for the moro...er...other roommate to leave before I can call to have my phone line installed. 20:47:00 Herkamire: I have to get permission to post advertisements at both UCSD and Mira Costa, as far as I can tell. 20:47:14 a phone would be good :) (especially as much of your work could be people that need you to set up their computer so they can do email) 20:47:16 I hope said permission doesn't involve money. 20:47:45 good luck :) 20:47:51 Thanks 20:47:57 you should be able to get them up somewhere especially where you're a student 20:48:11 Currently, that'd be Mira Costa. 20:48:25 Which is 30 miles north. Which is why I'm looking to cover both Oceanside and University City areas. 20:58:47 * arke is gonna kill somebody 20:58:57 his name is Manfred vo Thun 20:59:02 von* 20:59:09 Manfred von Thun has got to die. 21:00:32 anybody know who he is? 21:00:41 or, more importantly, what he made? 21:00:47 No. 21:00:49 or, where he stole that idea from? 21:00:53 and, no, in that order. 21:00:56 And No. 21:00:56 :) 21:01:01 Manfred von Thun made Joy 21:01:12 now, Joy is the most evil p.o.s. i have ever seen. 21:01:26 However, Joy is based upon something else, much less evil 21:01:32 who cares? 21:01:44 Herkamire: I had that idea first. 21:01:54 I made up the whole concept, a long time ago. 21:01:56 what's Joy? 21:02:12 and I suddenly find somebody stole it, and also made it an evil p.o.s. while he was at it. 21:02:21 Herkamire: a functional forth. 21:02:26 oh, that makes sense. Your mad because someone twisted your idea and made it look like a shitty one. 21:02:47 somebody took my idea. 21:02:48 yes 21:02:57 and they didnt know my implementation idead 21:03:05 functional as in "functional programming" or as in "working" 21:03:10 and not only did they claim credit, they made it SUCK!! 21:03:15 as in functional programmming 21:03:32 I still have a tenuous grasp on what "functional programming" means. 21:04:36 functional programming --- functions are like the highest type or whatever 21:04:44 Functions are ALL you have. 21:04:49 EVERYTHING in the system is a function. 21:04:58 basically, loops are functions, and there is plenty of lambda 21:05:11 nifty. 21:05:13 well, most functional languages have some imperative features 21:05:17 what about data? 21:05:21 this prevents you from killing your family. 21:05:29 Herkamire: non-existant, usually. 21:06:01 Believe it or not, only a very select few functional languages have imperative features. 21:06:10 Pure functional languages have zero imperative features. 21:06:11 are they usefull for more than solving mathimatical problems? 21:06:12 kc5tja: hmm?? 21:06:33 Herkamire: yes. 21:06:39 ML is the only functional language that I personally know of that has limited imperative capabilities. 21:06:39 Herkamire: SML is actually pretty nice. 21:06:51 oh, I know something about sml I think. 21:06:55 Scheme is considered functional. 21:07:02 oh nifty 21:07:12 ok, not quite as tenuous now :) 21:08:22 Herkamire: Most Forth software is written in a functional manner -- take inputs from stack, leave results on stack, and don't change global state. 21:08:53 This is yet another reason why Forth is impossible to classify as a strictly imperative language. 21:09:45 so if you take away accessing memory/heap from forth it would be quite functional? 21:09:51 Although it is also true that Forth is probably best kept a mixture of functional and imperative styles. 21:09:59 heh 21:10:09 Herkamire: If you could get away with that, it would be the very definition of a Functional Language(tm). 21:10:13 Herkamire: actually, My idea still allows imperative features. 21:10:39 Herkamire: such as global variables, and memory allocation. 21:10:44 Herkamire: and types. 21:10:58 "imperitive" means it works as a list of instructions/calls right? like no funny business; the program does this, then this, then this, then this. 21:11:01 * kc5tja LOVES the way ML and Haskell deal with user-defined datatypes. 21:11:01 Herkamire: it implements a non-strict type system 21:11:19 l0l 21:11:23 Herkamire: Imperative means you're bossing the computer around like the brainless slave that it is. 21:11:24 Herkamire: basically 21:11:26 Do this. 21:11:27 Do that. 21:11:31 No, do this instead. 21:11:37 gotcha 21:11:39 I like those. 21:11:44 makes me feel smart ;) 21:12:02 Functional style is a type of declarative programming: you're describing what has to get done, but in a style NOT so much bossing the computer around, as it is you're setting goals. 21:12:25 Logic programming is another form of declarative programming. 21:12:38 arke: what do you mean non-strict typing. you mean it prints "warning: it looks like you're using the wrong type." instead of "Error: you used the wrong type. (reseting)"? 21:12:40 Herkamire: well, anyway, Fifth (as i might call it) has a nice form of creating on-the-fly functinos and variables 21:12:47 Herkamire: no. 21:12:51 It just so happens that most functional styles map directly to imperative implementations with only minor massaging. 21:12:58 Herkamire: it doesnt check types at all, but it does allow their use 21:13:16 --- quit: JP (Read error: 104 (Connection reset by peer)) 21:13:20 Fifth is already taken 21:13:24 damn 21:13:30 Sixth isn't, as far as I know. 21:13:31 Funth then 21:15:02 Anyway, I'm pleased to note that my FS/Forth target compiler properly creates word entries in its forth vocabulary. 21:15:25 I have no means of searching the vocabulary yet though. 21:15:57 but I have enough to implement the target's version of :, which is probably the next thing I should implement. 21:16:09 Bah. 21:16:31 (and that means scanning the vocabulary isn't too far behind) 21:16:33 I should make a Funth compiler/whatever. 21:16:41 kc5tja: I can see two ways of doing declarative programming: 1) say what needs to be done (in order or not) 2) say the results you want, and give it a bunch of rules (logic stuff) 21:16:41 fith is taken too 21:16:52 yes, fith is a speaking language 21:17:34 arke: have you written a forth before? 21:17:35 natural language? 21:17:43 ill write you guys some sample funth code. 21:17:48 Herkamire: nope :P cant be hard. 21:17:54 Herkamire: The order isn't explicit with functional programming -- the compiler determines order of operations from the function graph it builds, just like you'd determine the order of operations from looking at an algebra equation in a math text (in fact, they use *exactly* the same rules) 21:17:56 uuter: www.langmaker.com/fith.htm 21:18:29 * kc5tja tried adapting Forth to written text, and it worked astonishingly well. 21:18:58 arke: write a forth that works. 21:18:58 The English vocabulary isn't well suited towards that structure though. I ended up using a lot of hyphenated words because, in English, many singular concepts take two or more words in English to express. 21:19:11 kc5tja: glad to hear you're making progress with FS/Forth 21:19:24 Herkamire: It's slow, but I feel I can do nothing else at the moment. 21:19:54 nothing like unemployment to give time to your hobby[s] 21:19:56 * kc5tja is really, really glad that he wrote FS/Forth for DOS -- I learned a lot from the experience. 21:20:14 Many mistakes that I'm circumventing this time around. 21:20:23 yeah. I learned a rediculous amount in writing my forths 21:20:46 Like, I'm fast approaching the point where it can start compiling colon definitions. 21:20:54 And I've only written a handful of screens of source. 21:21:03 yeah. I make a quick and dirty forth in C a couple years ago. I've avoided many mistakes this time around :) 21:21:22 Dude, programming is like music or painting. 21:21:31 explain... 21:21:34 You just have to "jam" with it. 21:21:42 If it doesn't sound/look/feel right, chuck it, and start over. 21:21:43 practice :) 21:21:50 really. 21:21:53 Oh, and practice too. 21:21:58 That's an orthogonal issue, but I fully agree. 21:22:17 I have a theory that the reason there's so much crappy software out there is that people resist chucking stuff. 21:22:27 Very much so. 21:22:31 I can't agree more. 21:22:42 They design for code re-use, when there should be idea re-use as well. 21:22:47 people feel that they can't chuck some stuff (like their OS) 21:22:51 Code re-use is good only in a limited number of instances. 21:23:01 or that it would be a lot of work (in the case of code they've spent a month making) 21:23:17 You know, I've been considering just skipping the whole Linux version of FS/Forth and going straight native with it. 21:23:41 and then they waste three months next year dealing with it when they could have spent one week now chucking the month of crap and doing it right. 21:23:42 but then I came to my senses, and thought, "Yeah, but then I'd be restricted to using GForth under Linux...iick!" 21:23:59 hehe :) 21:24:20 yeah. I keep asking myself if I want my forth to run under linux. 21:24:40 and I keep wanting to say no because it would be easier 21:24:56 but I'm pretty sure I'm going to be using linux for a while, and I wanna play with my forth. 21:25:05 Well, I know for a fact coding for Linux is much harder than just hacking raw hardware. 21:25:11 hopefully it won't add too much cludge to have it run under Linux too. 21:25:21 * kc5tja nods 21:25:33 Well, I'm investigating ways to move the "shell" out of the Forth kernel. 21:25:44 I simply do not want any user interface at all built-in to the Forth kernel. 21:25:45 yeah, but I don't care if it runs on anybody elses linux :) I'm fine with mmapping /dev/fb/0 and doing the graphics through that 21:25:52 The shell must be loaded and run as any other application. 21:26:21 yeah. I think that's good stuff. 21:26:26 This way, I can have a console-only shell, an SDL shell, etc. 21:26:38 what's the word that interprets a string from the stack? 21:26:46 EVALUATE 21:26:58 I agree it should be seperate. 21:27:01 it is in my forth. 21:27:08 It should be in every Forth. 21:27:17 EVALUATE is extremely handy to have. Immensely. 21:27:19 my kernel doesn't even know about text 21:27:31 Well, mine will, because it has to LOAD blocks from storage. :) 21:28:00 Speaking of which, I'm undecided how big to make the block buffer cache. 21:29:38 I've been thinking today about whether I should make my source tokens 32 bits instead of 16 21:29:59 heh :) 21:30:01 Well, if it's any consolation, I've only allocated space for 1024 words in my Forth dictionary. 21:30:09 * kc5tja is planning on only 256 to 512 compiler words. 21:30:19 I haven't really thought beyond the point where I will have enough data that it doesn't all fit in memory at once :) 21:30:30 256MB on this thing :) 21:30:50 The Forth vocabulary takes up 20KB of space with 1024 words. :) 21:31:06 The compiler vocabulary will take up either 5 or 10KB, not sure yet. 21:31:22 And the target compiler is aware only of 16KB of code space. :D 21:31:42 (of course, the run-time will support gigabytes of code space) 21:32:50 brb 21:33:22 I think in the next version of the target compiler I build, I'm going to keep track of relocation references, so that I can just spit out an ELF file directly, instead of dealing with a custom loader format (which I'm going to base on the EA-IFF-85a standard) 21:36:10 nice 21:36:34 This way I can just create stand-alone Linux applications if I wanted. 21:36:45 wait, 16KB space for compiled code? 21:36:49 (That is my ultimate goal too -- that is something I direly miss from the days of PygmyForth) 21:36:59 For the target compiled code, yes. 21:37:14 That is, the code generated by the FS/Forth target compiler cannot exceed 16KB. 21:37:30 alright, who wants to hear some more funth stuff? 21:37:32 I had it as a pretty high priority to make a standalone linux binary. Now I have, and I don't really that much. 21:37:41 i really want to present my ideas to people for them to judge 21:37:44 I don't intend to distribute a binary to anyone... ever 21:37:55 Herkamire: I do. 21:38:01 arke: Ok. Shoot. 21:38:06 alright. 21:38:10 arke: It sucks. 21:38:10 ;D 21:38:17 (hey, you asked. ;D) 21:38:26 the Forth CREATE DOES> system is also present in Funth 21:38:27 Sorry, I'm being facetious. :D 21:38:35 the constant type can be defined as 21:38:40 arke: I wish I had time, but I gotta go to bed. I'll review the logs tomorrow. 21:38:49 constant ( create ( , ) does ( @ ) ) 21:38:55 Herkamire: ok :) 21:39:06 Herkamire: I do. I intend very much on making some Linux applications, then distributing it as open source. In Forth. Fuck the GCC bigots. 21:39:11 kc5tja: cool. good luck with ELF. I hear relocations are a bit of a pain. 21:39:24 Herkamire: They are, and they aren't, at the same time. 21:39:31 Herkamire: But I won't do that until I get my current system running. 21:39:52 arke: I'm not sure how to parse that. That is looking a lot like Scheme at this point. 21:39:55 Or Lisp in general. 21:39:58 lol 21:40:03 its because theres no indentation 21:40:10 i kinda made Funth use lots of parens 21:40:18 constant 21:40:19 ( 21:40:21 create ( 21:40:23 , 21:40:26 ) does ( 21:40:29 @ 21:40:30 ) 21:40:31 ) 21:40:37 I didn't expect something like that to use indentation. 21:40:47 As a Forth programmer, I like to keep short definitions on a single line. 21:40:52 heh 21:40:54 I might distribute a binary. But it seems the major advantage to distributing a binary is that I could do away with the bootstrapping process. and I'm hesitant to do that. 21:41:00 you can indent anyway you want. 21:41:32 * kc5tja nods 21:41:41 my current excuse for wanting the bootstrap is so I can continue to use version control (svn ATM) on my source blocks. 21:42:10 Herkamire: I'm looking to write certain X11 applications in FS/Forth. People won't want to haul around a Forth runtime for applications I write in FS/Forth. 21:42:51 kc5tja: agreed. I would definately want standalone capability if I was writing software programs for general use. 21:43:06 arke: I still don't see the parsing rules for it though. To me, create is a verb; in your system, it looks like a declaration. 21:43:24 it's just that I'm making a system (with software _in_ it) not software for any existing system 21:43:34 kc5tja: create is analogous to CREATE 21:43:47 :D 21:44:07 create ( , ) does ( @ ) ==> CREATE , DOES> @ 21:44:13 arke: what's with all the perens? 21:44:18 sorry, I was going to bed... 21:44:19 Herkamire: Understood. Remember that to make a stand-alone application, you save the entire Forth environment as a turn-key application -- no linking or anything is necessary; whatever is in the dictionary gets spit out into the new ELF file. 21:44:51 Herkamire: in actual apps, there wouldnt be many parens. 21:44:54 That's what I mean; the ( , ) makes create look like a declaration, not a verb that actually does something. 21:44:57 Herkamire: this is just for my example 21:45:39 kc5tja: oh. 21:45:43 So create is a true verb in your system then. 21:45:48 kc5tja: yeah. I'll have to look up "turn-key" again, but I get your drift. my forth saves a binary when you press "S" 21:45:53 good night 21:46:00 'night Herkamire 21:46:05 yes. 21:46:06 same with if 21:46:15 --- quit: Herkamire ("sleepy time") 21:46:24 some_condition if ( blah ) else ( cheese ) 21:46:57 OK 21:47:11 Do ( and ) do anything though? 21:47:14 its just a few select words that use that syntax. 21:47:21 they are simply delimiters. 21:47:27 Are they required? 21:47:47 kc5tja: if they arent there, they act kinda like in C. 21:48:05 for example, if ( blah cheese ) would execute blah and cheese only if the condition was true. 21:48:20 if blah cheese would execute blah if the condition was true, but cheese either way 21:48:29 OK, so: condition? if blah blort else cut cheese is illegal, but condition? if blah else cheese is legal. 21:48:44 yes. 21:48:54 Gotcha. 21:49:02 hrm. 21:49:07 So ( and ) create virtual words. 21:49:19 ( and ) have very many uses 21:50:25 ( ) are function delimiters, special word delimiters, and lambda delimiters. 21:51:11 I'm not entirely sure I like the presence of special delimiters. 21:51:12 for example, you can't pass a direct adress. 21:51:29 kc5tja: hrm :D they arent required really. 21:51:46 Well, continue. :) 21:52:01 you have to pass addresses to functions. 21:52:15 for example, when i do (string "Hello, World!\n") print 21:52:18 the following happens 21:53:10 the compiler sees ( , and knows a lambda is following 21:53:15 string "Hello, World! 21:54:07 just tells it to make a space in memory, and mark it as a string. No name associated with it though. Also, it is discarded once the calling function ends. 21:54:09 Right -- like I said, ( compiles a virtual word, and ) compiles its address for execution. 21:54:14 (garbage collection) 21:54:23 yes, exactly. 21:54:36 so, on the stack, is a pointer to the header of something 21:55:36 now, when print executes, it takes the stuff from string. 21:55:48 * kc5tja nods 21:56:01 * kc5tja chuckles -- maybe you should call it Fithp. :) 21:56:12 well 21:56:15 actually 21:56:20 i think i kinda messed up. 21:56:23 :D 21:56:34 the way i thought of is probably not going to work 21:56:53 alright. 21:56:55 * kc5tja has a friend that is wondering about code quotation in Forth (William Tanksley; maintainer of the concatenative language group). Do you mind if I forward this to him? 21:57:19 no, no problem :) 21:57:30 this might be good 21:57:35 give him my email address too :) 21:57:45 I don't have your e-mail address. 21:58:01 are you sure? :P 21:58:14 Quite. 21:58:23 But I'm sure with sufficient digging, I can find it out. 21:58:24 lol 21:58:31 Google is my friend. 21:58:41 * arke hides 21:59:03 * kc5tja ponders creating a site called Giggle. :D 21:59:32 brb 22:01:57 :D 22:27:53 back 22:28:04 ok :) 22:28:11 i was thinking about it a little more. 22:28:18 Damn, I'm hungry, and I've nothing to eat. I should have bought some kind of snack or something. 22:28:23 l0l 22:28:31 well 22:28:38 a string in memory would look like this: 22:29:09 push cheese 22:29:17 cheese: db "My String" 22:29:21 erm 22:29:23 no 22:29:25 push cheese 22:29:26 ret 22:29:32 cheese: db "My String" 22:29:52 * kc5tja nods 22:30:15 hrm ... the problem with that is that its 6 bytes bulk for every string 22:30:57 I can't see any way around it. 22:31:09 At some point, something will need to be pushed onto the stack. 22:34:34 --- quit: proteusguy (Read error: 113 (No route to host)) 22:35:34 yeah. 22:35:42 dynamic type checking would be even worse 22:35:43 Oh well. I suppose I should code the vocabulary scanning code. 22:35:48 so i guess thill have to do. 22:36:07 hey --- are you coding FS/Forth in DOS asm? 22:36:12 No 22:36:20 FS/Forth for DOS is written with Pygmy Forth. 22:36:29 FS/Forth for Linux is being written with GForth. 22:36:34 oh he 22:36:36 h 22:36:59 * kc5tja uses self-built target compilers to code the final FS/Forth environment with. 22:37:18 It helps keep track of all the state that exists in a Forth environment (e.g., word lists, user variables, etc) 22:38:02 :) 22:39:37 i should write some docs on Funth 22:40:33 Always a good idea. 22:41:42 yep. 22:43:17 --- join: Serg_Penguin (Serg_Pengu@212.34.52.140) joined #forth 22:43:21 hi 22:45:01 y0 23:17:10 Man, I love having the return stack directly and explicitly exposed to me. 23:28:30 Anyway, I'm getting punchy. Going to bed. 23:28:48 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 23:29:54 --- quit: Serg_Penguin () 23:59:59 --- log: ended forth/03.09.07