00:00:00 --- log: started forth/03.05.07 01:11:41 --- quit: Speuler ("NO CARRIER") 03:07:02 --- join: karingo (karingo@33.portland-05-10rs.or.dial-access.att.net) joined #forth 03:15:34 --- quit: a7r (Read error: 60 (Operation timed out)) 03:48:23 --- quit: karingo ("i go now, with hope that one day, some of you may see, the way.") 03:57:51 --- join: mur (jukka@baana-62-165-187-171.phnet.fi) joined #forth 04:07:08 hi 04:09:02 Hi serg, mur :) 04:11:32 hey serg and Robert 04:12:23 * Robert pets it 04:12:47 Kak ty, mur? :D 04:15:55 nu chut chut harasho 04:15:57 a ti? 04:16:11 I be fine! 04:16:21 Not russian, but damn close! 04:16:31 dada 04:16:41 see http://www.uktvadverts.com/ and media it's nice 04:37:52 RU is damn hard to learn 4 foreighners 04:37:55 :)) 04:38:39 not as hard as finnish and hungarian >:) 04:38:53 but yes much more harder than german or latin or english or such 04:39:52 hm.. ho much did you studied it ? 04:41:41 --- join: Speuler (~Speuler@mnch-d9ba4574.pool.mediaWays.net) joined #forth 04:41:41 well 2 years :) 04:42:03 then i got enough :P 04:42:24 i had 8 hours every day, that's quite lot of work 04:44:25 wow ! and how well do you speak or read/write ? 04:44:35 and for what purpose you studied ? 05:01:29 --- quit: mur (Read error: 110 (Connection timed out)) 05:03:05 Heh. 05:47:04 better let's all speak English 07:26:48 z 07:48:54 --- join: PoppaVic (~pfv@s87.waters.gtlakes.com) joined #forth 08:38:33 --- join: fridge (~fridge@dsl-203-33-163-28.NSW.netspace.net.au) joined #forth 09:24:42 * PoppaVic watches for signs of Life.. 09:29:08 I think I saw some bacterias here, two million years ago. 09:29:21 Not much... Life, here. 09:29:51 Yes, it's not only depressing, it's sorta' indicative. 09:34:30 Forth makes life go away. 09:34:59 I think I've seen that movie 09:35:02 FORTH: THE DESTROYER 09:35:16 * PoppaVic just sighs, shaking his head.. 09:50:05 Hehe :) 10:55:40 --- join: a7r (~a7r@206.72.82.135) joined #forth 11:54:47 --- join: thin (~thin@acc-1-02.cariboo.bc.ca) joined #forth 12:15:43 you guys are the ones who kill this channel 12:16:19 :P 12:16:44 nuh uh 12:16:46 is that a metaphor? 12:16:50 all i have to do is email kc5tja and tell him to come here and when he does, viola! the channel becomes alive 12:17:20 We all love him very much. 12:20:32 well it's just that he's one of the few worth listening to and doesn't idle :) 12:20:46 Heh. 12:20:50 Unlike you, thin :) 12:22:14 * PoppaVic will stick to #c until he see's signs of Intelligent Life ;-) 12:23:03 Oh, no! 12:23:07 i never idle, but i don't particularly try to limit what i say to interesting comments 12:23:25 i'm moody, but that's okay, i blame the channel for it :P 12:23:35 thin: You don't idle, no... but we often wish you would ;) 12:23:56 it's just that some people on this channel rub me the wrong way 12:24:10 * Robert rubs thin. The _right_ way. 12:24:30 particularly because they sometimes say the wrong things at the wrong time 12:24:59 which basically makes this channel look juvenile to newcomers 12:25:35 the newcomers that come and stay are those that have english as a second language 12:26:09 Because they don't understand our insults. 12:26:12 (er, those that don't have english as their primary language) 12:26:43 who insults the newcomers? 12:27:18 Hmm.. good question. 12:27:36 sifbot: .( Loser!) 12:27:39 Robert: Loser! 12:27:42 He does! 12:27:45 * Robert points 12:27:46 thin: this is IRC,. juvenile is woven into the fabric of the protocol. 12:30:01 --- quit: Speuler (Connection timed out) 12:30:36 --- join: Speuler (~Speuler@mnch-d9ba49db.pool.mediaWays.net) joined #forth 12:35:54 kc5tja isn't here yet because I haven't finished writing my email to him :PPPP 12:36:43 Robert: can I recommend you to read "The Fountainhead" by Ayn Rand, also read "Atlas Shrugged" by Ayn Rand 12:38:17 they are big books, but you're smart enough to handle them right? :P 12:39:02 why do elitist assholes always quote Ayn Rand 12:39:26 "..elitist assholes.." 12:40:18 especially why do people connect _The Fountainhead_ with _Atlas Shrugged_.. when Atlas sucked. 12:40:46 I like my atlas' - but, I don't like to travel. 12:41:37 PoppaVic: sorry, I should have been more clear, I think atlases are cool. :) 12:41:47 a7r: fountainhead was written before atlas shrugged.. the former is more about the individual, the latter is more about the relationships between similar individuals & between rational men and the rest of the country 12:42:10 thin: yup.. and IMHO Ayn Rand was much more 'real' with fountainhead. 12:42:12 atlas shrugged a long time ago Did Ayn give hummers? 12:42:47 _Atlas Shrugged_ seemed totally contrived to me, like Rand was trying to shoehorn her philosophy much more into a story, than she did with _The Fountainhead_ 12:43:24 Roark seemed like a possibility.. the Valley sounded like righteous person's wet dream. 12:43:27 duh, atlas shrugged was to present her philosophy more directly 12:43:43 yeah, and it suffered as a story because of it. 12:43:52 she should have just written a text book. 12:44:00 i liked atlas shrugged alot more than the fountainhead 12:44:12 i read both of these books in the last 3 weeks 12:44:28 how old are you? 12:44:31 21 12:44:46 you? 12:44:49 23 12:45:01 hmm.. a good friend of mne boguht me atlas shrugged 12:45:03 i still can't finish it 12:45:31 it's got some nice literary devices but man, sooo long 12:45:37 cant get past 1/2 12:45:39 ianni: you might like _The Fountainhead_ more. 12:45:50 I had to force myself to finish _Atlas Shrugged_ 12:46:07 yeh, im really not interested anymore.. I'd rather try to read the umberto eco book I have 12:46:30 all of my dead tree reading lately is on computers, sadly.. im such a geek 12:46:35 heh heh 12:46:50 the only fiction on my to-read list right now, is gibson's new work. 12:47:04 a7r: i skipped most of that 60 page speech made by John Galt. man, that speech seemed quite repetitive 12:48:29 the book got slow at some parts, but after you get thru the slow parts or skip them, it's fine :P 12:48:31 thin: yeah dude,. I went through it 3 pages at a time, and kept on putting the book down. 12:48:31 heh 12:48:31 i read like 15 pages of that 12:48:31 yeah, the whole thing seems a bit contrived and boring at points. 12:48:37 took me 5 hours (because i kept getting distracted, putting the book down, etc) 12:48:39 not that I could do any better 12:48:40 :) 12:48:43 heh 12:48:50 I started getting really annoyed with her whole Gold-Has-Objective-Value BS 12:48:57 and that whole line of reasoning. 12:48:58 i really liked some of the allegories though 12:49:06 i think she made the characters and the situations deliberately extreme, for illustrative purposes 12:49:10 yeah... it's a valid point, but, got harped on a bt 12:49:18 but i agree with her 12:49:19 thin, for sure 12:49:22 me too 12:49:28 thin: you agree with objectivity of value? 12:49:30 just wish i could read it without getting bored as hell 12:49:36 it's fine for a good 100 pages or so 12:49:48 she named my inner dreams/motivations.. 12:49:51 im not a very attentive reader 12:50:06 even when i do get sucked in, ill read even faster and miss more 12:50:47 I blew through _Ender's Game_ like that, and had to reread it. 12:50:53 after I took philosophy 101, i thought "hey, why don't i create a 'logical' philosophy based on the fundamental axioms that everyone uses in order to survive, and build a whole philosophy from that?" 12:51:09 turns out Ayn Rand already did most of that for me :P 12:51:17 I think that's my rub with it. 12:51:29 * thin also picked up some of her non-fiction books 12:51:34 I don't believe in any fundamental axioms.. I only believe in my perception, which is inherently subjective. 12:51:46 so I strive to be objective.. but I know I never will be. 12:52:29 a7r: no, i'm just talking about simple things like gravity.. we never truely Know that an object will fall, but we rely on the fact it has happened hundreds of times before to predict that it will fall the next time 12:52:43 and eating to survive, et 12:52:44 etc 12:52:44 thin: yeah, that's fair. 12:53:06 but things like `gold has objective value' seem so inherently wrong to me. 12:53:25 because of our uses, and perceptions for uses, of things. 12:53:52 like.. if I'm dying of thirst.. gold has no value to me.. but water has ultimate value. 12:54:28 so your perceptions of the values of things are constantly changing.. objectivity gets really hard to nail down. 12:55:00 so Rand pushing ``Objectivism'' seems like a really bad joke to me. 12:55:04 in Ayn Rand's non-fiction articles, she attacks Kant because he basically introduced (or strengthened) the concept of "Your truth isn't my truth" and subjectivity concepts 12:55:14 yeah 12:55:41 but is there an absolute truth? I don't think there is. It's all based on perceptions. 12:56:09 what I will say is, I don't buy the whole relativist slant,.. I believe humans can get together and have a context that defines some near-absolutes. 12:56:14 well if you perceive wrongly, you can die.. 12:56:19 and that context is just shared perception. 12:56:35 thin: Someone recommended "Atlas Shrugged"... 12:56:36 and that shared perception I think is what defines society, and our societal contract. 12:56:48 she just takes the stance that Reality exists, and if we don't live by its rules, we die 12:56:54 thin: Said that if I ever had the time to read a book by a mad(wo)man... :) 12:57:23 Robert: the people that think she was mad are wrong I think. 12:57:40 a7r: Maybe not insane, but definitley wrong :) 12:57:41 she was pretty sane.. I think she just missed her own contradictions. 12:58:00 Robert: I wouldn't call her totally wrong. 12:58:13 if you haven't at least read _The Fountainhead_ I think you're doing yourself a disservice. 12:58:18 it is a materpiece. 12:58:39 The story of Roark is what got me through the end of highschool. 12:58:53 Maybe I will..some day. 12:58:56 yeah. 12:59:01 robert: why would you say "definitely wrong" ?? did you read any of her works? or do you take what other people say without thinking for yourself ? 12:59:45 Rand had no concept of the value of a cheeseburger to me, right now. 13:00:34 thin: I only beleive what Stalin tells me, nothing else. ;) 13:00:48 haha 13:00:58 a7r: subjective valuation isn't integral to the philosophy.. 13:01:18 except in the case of Consumer Surplus & Producer Surplus (economics) 13:05:04 thin: which is my problem with it.. I don't think you can separate value into objective and subjective value. 13:05:05 objective value is defined by the marketplace 13:05:05 which is ultimately subjective 13:05:05 yeah 13:05:05 i think you misunderstood her a little.. 13:05:05 robert: I think it's good policy to assume that people are stupid and that groups are stupider. People like to succumb to groupthink, they see many people doing things a particular way and assume it must be best way or the Right way. Look at the poor fools who think C is great ;) 13:05:05 haha, C is great. ;) 13:05:05 .. for some things. 13:05:05 yeah it's okay 13:05:05 after learning Forth, I don't think I'd write an OS with.. but I use it quite often. 13:05:05 i just harass people who use it because quite a few people think "if everyone uses it, it must be the best language" 13:05:05 yeah 13:05:05 but if we were going off those metrics, we should all be MCSE-certified Java and C# programmers. 13:05:22 with some C++ if we were `hardcore' 13:05:56 thin: Yes...? 13:06:34 thin: do you drive a car? 13:06:42 * PoppaVic rotfls 13:07:00 Java and C# are highly advertised, I don't think they are perceived as the language(s) that everyone is using just yet 13:07:28 a7r: don't have a car of my own yet, but yeah I drive 13:07:51 I'm hoping to buy a Corolla GTS sometime soon for cheap 13:08:02 thin: do you drive a gasoline-running piston engine? 13:08:13 yeah 13:08:24 why? 13:08:46 when you could be driving a turbocharged propane running rotary 13:08:54 which you could argue is much better 13:09:07 or you could argue is much worse 13:09:14 depending on your perceptions, and what you value. 13:10:06 okay you are talking about something different... 13:10:21 the word "value" has at least two definitions 13:11:26 there is the one "values" represents, where cheapness, or quality, or power of the engine is what we "value" 13:11:57 but there's also economic/production value (which is what money represents) 13:12:10 nod. 13:12:44 I would tend to not say that is two different concepts, and just generalize them as 1 concept. 13:13:30 i.e. what I'm willing to sacrifice to attain something (I just pulled that out of my ass, so you can probably poke holes in that statement.. but I think you get what I mean) 13:15:22 BRB, cheeseburger calls. 13:15:27 when she said "gold has objective value" she meant that the value of gold was determined by reality, by the economic market.. when everyone agrees to use gold as currency, that allows them to produce things and trade for the gold instead of trading for another item 13:16:03 right now, we aren't trading with an item that has an "objective value" 13:16:15 because the government has unpegged the currency from the gold standard 13:16:30 and therefore, they can print off more paper 13:16:41 and use that to pay off their debts 13:16:46 this is what causes inflation 13:16:53 it's basically a hidden tax on everyone 13:17:10 printing off more money devalues the money 13:17:26 and everyone is "taxed" 4% or whatever the inflation rate is 13:23:23 "objective" == determined by reality rather than people 13:36:21 --- join: wossname (wossname@HSE-QuebecCity-ppp81363.qc.sympatico.ca) joined #forth 13:36:55 uh oh 13:36:58 wossname is here 13:37:02 hidE! 13:37:28 !~ 13:37:31 hi thin 13:43:14 I wonder how hard it's going to be to write a PNG decoder in Forth 13:43:30 maximum 8 blocks/screens 13:47:18 yeah, I dunno 13:47:28 I need to figure out what sections of the PNG spec I want to support first 13:47:48 i think a png decoder has been coded in forth before 13:48:49 which forth you going to code it in? 13:48:51 colorforth? 13:49:10 pforth probably, to start with 13:56:42 --- join: I440r (~I440r@dialup-67.74.15.201.Dial1.Cincinnati.Level3.net) joined #forth 13:56:57 Hi :) 13:57:01 :) 13:57:37 bad storms the other day, tree fell on the power lines. power didnt go out till the electric company turned it off so they could get rid of teh tree. took them a couple of hours 13:57:48 and when they were done i had no fones grrr 13:57:51 that was 2 days ago 13:57:58 :/ 13:58:03 they JUST got my fones back online :/ 13:58:19 But you survived the internet abstinense? :) 13:59:30 I440r: Point to Point WiFi is in your future. :) that,. and a generator. 14:01:56 --- join: I440r_ (~I440r@dialup-67.74.4.228.Dial1.Cincinnati.Level3.net) joined #forth 14:02:05 maybe they arent finished fixing my fone :/ 14:07:18 --- quit: I440r_ (Read error: 104 (Connection reset by peer)) 14:08:20 --- quit: thin ("bored") 14:11:40 --- join: I440r_ (~I440r@dialup-67.74.4.228.Dial1.Cincinnati.Level3.net) joined #forth 14:20:39 --- quit: I440r (Read error: 110 (Connection timed out)) 14:39:43 --- join: tcn (~tcn@tc1-login14.megatrondata.com) joined #forth 14:39:56 hey 14:41:50 hi tcn! 14:41:59 ive been offline for a cpl of days, just got back online 14:42:03 fones were out (dammit!) 14:43:05 heh.. oh.. tornadoes, eh? 14:43:16 no but this was due to a storm 14:43:49 tree fell down onto power lines. power company turn power off, chop up tree, replace damaged power line, break my fone line, turn power back on 14:43:54 that was TWO days ago :/ 14:44:08 oh i see 14:44:36 did you get my 2nd email? like my plan for unix keyboards.. am I right or am I right? 14:44:56 well, let me tell you what im doing 14:45:29 ive mapped out EVERY single keypress including shift, control and alt for the linux terminal, eterm, xterm and rxvt 14:45:44 i know what sequences are returned by ALL keys on all those terminals 14:46:32 if i know the tmerninal ill know what tables to earch for a given key sequence 14:46:48 some sequences are common to certain terminals, i wont duplicate the tables 14:47:05 but yes i got your email :) 14:47:20 hm, ok, that sounds like a plan. 14:47:33 heh - i was just wishing there was a very simple keymapping... unix/linux's is so... argh 14:47:42 i dont get terminals still :P 14:47:45 it sucks 14:47:46 actually, i can get away with not doing this 14:47:48 yea 14:48:00 i am already ysing terminfo for the keys IT describes 14:48:13 wihich is about 1/29834652897346578923 of the possible keypresses 14:48:24 terminfo is a huge pile of crap 14:48:26 question - been reading this forth book by Brodie... why does he show the word containing the length of the word name and the first 3 characters? does adding the first three characters there somehow speed up dictionary lookup? 14:48:27 but if terminfo is half-assed and BSD doesn't have it, why even use it? 14:48:35 the designers of terminfo/termcap have their head up their asses 14:48:40 or am i misunderstanding his diagrams 14:49:01 well, i dont want to because to use terminfo i have to rely on ncurses 14:49:02 Starting Forth is ancient - and some systems used only 3 chars - used to be a setting. 14:49:13 yeah - I figured it miht be out of date 14:49:18 but i dont fully understand the point 14:49:18 unfortunatly i think i have to use terminfo for OUTPUT sequences 14:49:36 still a fine refernce, though... Thinking Forth is even better. 14:49:42 I440r_: hehe, better to adapt from the sane system to the insane one i guess 14:49:52 ianni: they used to do that.. but words like FORTH and FORMS would look the same to it :) 14:49:57 the point? to three-letter 'words'? 14:50:16 PoppaVic: so if there are three letter words, I can't define a : foo ; and a : foo2 ; ? 14:50:20 its just a means of saving dictionary space 14:50:26 correct? 14:50:29 right 14:50:33 imagine you have 4K - and it was expensive - you do NOT want all the ram eaten by the headers 14:50:35 ok, it makes sense now then 14:50:42 :) 14:50:42 it's better to use hashing 14:50:45 the count-byte, recall.. 14:51:06 tcn: mm... right 14:51:12 it is assumed you wont have words in the same vocabulary that are teh same length and have the same first 3 chars 14:51:16 whats a good hash for strings? 14:51:28 I440r_: ah, the length... I see now 14:51:29 tcn the hashing is not a space saver, its a speed improvement 14:51:45 I440r_ wouldnt it also be a space saver? or could you not avoid collision that way 14:52:05 wouldnt what also be a space saver ? 14:52:07 --- join: randolm (wossname@HSE-QuebecCity-ppp81766.qc.sympatico.ca) joined #forth 14:52:08 hashing isn't supposed to save space.. it just makes sense for modern computers 14:52:21 --- quit: wossname (Read error: 60 (Operation timed out)) 14:52:22 i was thinking in terms of storing the word name as the hash.. i guses it wouldnt work like that 14:52:32 nevermind 14:52:38 --- nick: randolm -> wossname 14:52:41 ianni: maybe the first letter.. 14:52:45 no. way too many collisions that way 14:52:56 sweet.. I always have made this allegory 14:52:56 http://www.paulgraham.com/hp.html 14:53:19 hashing to save space works ;p 14:55:06 dont most programs that use hashes have some way to handle collisions? or are they written so that the hash is good enoguh to avoid them? 14:55:31 I mean, i guses the best you could do is increase the accuracy of the hash for everything if anything collided 14:55:35 you keep the item as well as the key 14:55:39 right.. 14:55:46 in forth a hash collistion doesnt matter 14:55:52 unless you're writing a ridiculous two hundred byte forth in asm, or something 14:57:04 why not in forth 14:57:40 ? 14:57:55 ok look at the dictionary headers 14:57:58 they are just a linked list of word names 14:58:06 a hash collision doesn't matter for any lookup, really.. you just do a linked list search after the hash.. 14:58:16 if you ahve 298465284 words in teh dictionary then it would take a long time to search that dictionary 14:58:47 what you do is you split the dictionary up into some number of seperate threads and the thread a given word is linked to depends on its hash value 15:04:50 --- join: kc5tja (~kc5tja@ip68-8-206-137.sd.sd.cox.net) joined #forth 15:09:46 ACTION goes to mess around with hash functions :) 15:10:10 ? 15:10:13 lol 15:10:17 your irc client sux :) 15:10:40 I like Cb hash.. Yummy.. (always add onion). 15:11:23 it doesn't have /me 15:11:34 i should check the RFC :) 15:11:46 it doesn't have ctcp either :) 15:11:56 some clients wont let you do /raw either 15:12:04 obviously, you need a real program ;-) 15:12:08 everything is raw in this client 15:12:15 hahaha 15:12:30 all this talk about hash is making me want some hashish... :) 15:12:39 yeah, stop irc'ing through telnet 15:12:40 spare me 15:12:42 there must be a NUL or something in front of stuff like ACTION and VERSION 15:13:01 no. the ctcp has a 0x01 in front of it 15:13:06 are actions ctcp's ? 15:13:12 I think so 15:13:23 an action is just like a privmsg then 15:13:37 sometimes I'll accidentally hit something where I'll see a reverse bold 'A'and then my privmsg 15:13:40 * PoppaVic emotes 15:13:43 but instead of "PRIVMSG" it has "ACTION" :) 15:13:47 and it will type it to a chanel, but everyone else sees a real action 15:13:49 I440r_ yeah 15:13:55 shot an emote ;-) 15:14:02 well, this is just a PRIVMSG to #forth, right... 15:14:17 yes 15:14:20 past 1700 !- bbl 15:14:27 that makes it a public privmsg heh 15:14:30 yah 15:14:34 kinda counterintuitive ;) 15:15:08 all of irc's protocol is "counterintuitive". 15:15:15 ..prolly counterproductive, too 15:15:17 actually, its private to the channel :) 15:16:18 :) 15:16:41 ACTION tries again 15:16:48 :) 15:16:53 * PoppaVic chortles... 15:17:26 did it work? 15:17:36 ACTION tries again 15:17:40 hahahahaha 15:17:45 * PoppaVic chortles... 15:18:03 :) 15:18:06 * tcn tries again 15:18:06 :) 15:18:07 ACTION :) 15:18:09 it came out right here 15:18:49 tcn: No more ACTIONs for you. You have had enough. Go sit at the dinner table and eat your veggies. :D 15:18:54 Not for me. 15:18:59 I saw "ACTION :)" from tcn 15:19:10 yeah 15:19:17 poor bugger is hashed 15:19:22 fuck it :) 15:19:30 Hashed? :) 15:19:40 * PoppaVic thinks we've tree'd 'im 15:19:53 The list goes on & on.. 15:20:34 kc5tja: dcc 15:20:54 PoppaVic: Heh, I just now got done reading the last one. 15:21:57 extract, then do "make ABI && less ABI.?" 15:23:29 I'd have to see how this "channels" idea would work - worse, how it would overlay "the universe". 15:23:51 OK. 15:24:01 All I/O occurs over channels, including persistence. 15:24:21 * PoppaVic hopes that means buffers 15:24:28 Hence, for the sake of argument, "CONFIG.SYS" and "AUTOEXEC.BAT" are channels. 15:24:47 Implementation-wise, channels may be buffers (for block I/O), or may not be (e.g., UARTs for serial comms) 15:24:47 hrrmmm - sounds like extra confusion. 15:24:53 Hear me out. 15:24:57 sure. 15:25:25 Once you open a channel, you can then acquire readers or writers to that channel. 15:25:42 Each reader or writer has its own file offset (<-- this is an important concept). 15:26:00 If locking is necessary, the range is specified when the reader/writer is acquired. 15:26:32 Pause, please.. 15:26:33 This is where the term carrier-rider comes from: the channel "carries" one or more readers/writers (the riders) 15:27:00 This has no effect on the underlying interface, right? 15:27:12 Define "underlying interface." 15:27:30 Here's a pretty good hash.. add up all the letters in a word, then take the lowest 4-5 bits.. 15:27:34 IOW: we are talking about a layer no less noxious than dicking with shell read/write? 15:28:28 There's a *tiny* bit extra setup in that you have to open the channel, then acquire a reader or writer, but once you have the reader or writer, it's used exactly (and I do mean exactly) like the relavent Unix I/O calls. 15:28:34 a hash is not good unless it involves at least six bit manipulators. 15:28:49 nevertheless, it's very balanced. 15:28:53 By "underlying" - I mean the asm/C/(eww C++) stuff is unaffected. 15:28:59 i'm not quite serious, btw :p 15:29:13 I've implemented this system on top of Unix before, as well as embedded. 15:29:15 oh :) 15:29:37 kc5tja: have you any example of this stuff? I'm certainly all for "KISS" - and unification at the interactive-interface sounds fine to me. 15:29:38 It of course works better on embedded systems, where you eliminate the 256-levels of buffering that goes on in between, but it is easy to implement. 15:30:06 PoppaVic: I'd have to dig out my old C sources -- I wrote it in C for Hifn, Inc. 15:30:13 yeah, I know that sometimes the buffering gets excessive - but then.. We have so many idiots to hand-hold ;-) 15:30:16 But the concepts are pretty portable. 15:31:01 well, I tried to write my gen_socks API with a large amount of "unification" in mind - but I rarely socket-program.. Files are my gig ;-) 15:31:16 * kc5tja nods 15:31:24 kc: so you can have multiple readers/writers at different offsets in one file? 15:31:24 --- join: thin (~thin@acc-1-02.cariboo.bc.ca) joined #forth 15:31:30 tcn: Yes. 15:31:35 hi all 15:31:37 Each with their own locking range. 15:31:42 hi tcn, kc5tja 15:31:44 * I440r_ hides 15:31:46 hello thin 15:31:47 (OS permitting, of course) 15:32:00 hi 15:32:06 re thin 15:32:16 kc: can you use channels as FIFOs? 15:32:48 tcn: Yes. 15:33:00 yeah, the idea is wonderful for locking - which I rarely do, and if it isn't a LOT of waste, I'm happy if I have fopen-type access. 15:33:27 tcn: Channels do not expose a direct I/O interface; instead, a channel exposes only "abstract" functionality, such as generating new riders, copying, deleting, renaming, etc. 15:34:26 well, for the commonFORTH VFS stuff I mentioned, what we'd want is the core functionality... 15:34:30 So all I/O semantics for a channel is defined through its riders. 15:34:59 poppavic: did you put that commonforth proposal online? 15:35:15 Please remember, afa that doc was concerned, we had no headers - just code that would support "the machine" 15:35:37 no - it's soo damned raw, and so few have had feedback, I've gone no further with the doc. 15:35:58 * kc5tja nods 15:36:16 So, while awaiting more debate, I've been beating on ge.c and brought distro.c over. 15:36:16 i haven't read through the logs since sunday.. had car trouble and crap.. 15:36:19 Like I said, I implemented this first under Unix environment, then under a raw hardware interface for a MIPS embedded device. 15:36:24 tcn: did you have a copy? 15:36:34 * kc5tja simply has to locate the copy that I have. 15:36:42 --- mode: ChanServ set +o thin 15:36:42 kc5tja: it's in that tarball 15:36:44 poppavic: I haven't seen anything about CF except in here on sunday 15:36:53 tcn: you dcc? 15:37:25 tinyirc doesn't do jack shit :) 15:38:18 wow.. a spammer just lost a $16 million lawsuit :) 15:38:50 --- mode: thin set -b *!mur@* 15:40:41 tcn: incoming.. 15:41:43 So, yeah - if that "channel" thing is around in code I can read, I'm all for checking it out ;-) 15:42:50 hmm.. that Hackers & Painters article explains why he likes LISP.. heh 15:42:59 PoppaVic: I see what you're getting at. Yeah, there's no change to the C code that gen.c would produce. This would be a Forth-environment abstraction. 15:43:20 E.g., for any Unix version of CommonForth, we'd build it on top of the existing Unix I/O API. 15:43:41 kc5tja: oh, no - gen.c is just kicking out that header & source so we - the asm/c folks - can all talk the same game - sans autoshit. 15:43:51 Cool - very cool 15:44:12 Ahh, I see. 15:44:34 BTW, I like your method for identifying distribution. That's going to be saved in my "Good Things To Know(tm)" file. :) 15:44:40 Well, we need to start getting together more doc/notes and source.. But, I keep diddling the abi thing in anticipation ;-) 15:45:04 yeah - I had to go back & steal it from my own lib.. (I HATE when I forget the 'safe place" ;-) 15:45:14 --- quit: wossname ("for the love of god, and all that is holy, my ANUS IS BLEEDING~@!~") 15:45:48 Hehe :D 15:45:49 more than we needed to know :) 15:46:14 well just be thankful you don't know WHY 15:46:24 I do. :D 15:46:25 distro.c - I swear to god - I had to write in self-defense.. I can't for the life of me figure out why the idea of a single reporter-program or file is so hard for all these systems to consider. 15:46:27 I have the animation. 15:48:13 Yeah, good point. And I agree about autoconf/automake -- they're so utterly incomprehensible, that I, to this day, still haven't made anything that ever WORKED with those tools yet. 15:48:48 well, I managed with my lib, but the autoshit - while all over - is just a whore. 15:49:06 It's worse. A whore is good for something. 15:49:27 I started to do something to parallel or even generate autoshit - via gforth.. But, the more I look at the autoshit, the less fun it sounds all alone. 15:50:08 poppavic: got it 15:50:22 ..to be honest, I'm not even sure how deep I have to track to puzzle out the voodoo being done by m4 to make autoshit work. 15:50:26 cool, tcn 15:50:28 I gave up. My solution is to write good, clean, easy to hack makefiles, and in the INSTALL.TXT file or whatever, just write, "Look, bum, this is Unix. You build from source, you hack the makefile. That simple." Not exactly in those words, but that's basically what I'm portraying. 15:51:00 well, we can get the autoshit to work for CommonFORTH... But, yes: decent makefiles sure help. 15:51:38 kc: yeah.. I write stuff for myself.. anyone else wants to use it, they can figure it out themselves :) 15:51:59 I suspect that woulda' sort kill commonFORTH early on ;-) 15:52:10 Well, if I contribute something to CommonForth's code base, you can be guaranteed that I am *not* touching anything with the word "auto" in it, nor am I even touching Makefile.in or other related files. 15:52:25 is it supposed to be an implementation or just a spec or model? 15:52:50 if the Make is nice & clean - totally sans perl & whatnot, then I can prolly beat it with a pipe. 15:52:50 tcn: A spec, but all specs need a reference implementation. Well, they SHOULD, at least. 15:53:00 why do you need makefiles?!?!?!!?!?!?!?!?! a loader screen is all ya need :P 15:53:15 oh, but PV doesn't like asm.. so he has to deal with all the incompatible C include files! 15:53:29 tcn: The way I keep seeing it is thus: we write a standard - which is typified with the program.. Much like ol' FIG did long, long ago. 15:53:47 where an asm forth, like eforth, only needs read/write syscalls. 15:53:49 asm..asm.. oh! gcc -S ! 15:54:18 tcn: You still need to customize the asm source for the syscalls of the specific environment you're running on. 15:54:19 no. it needs sys break and stuff too 15:54:26 and mprotect 15:54:40 possibly open/close too 15:54:53 mprotect, at least. we're talking minimal forth here.. 15:54:58 only one person may design the CommonForth standard or else it will become a POS 15:55:06 hhaaha 15:55:23 there is no point at all in pretending libc isn't around - but, hey cool: implementations that will run on a foo-4000 are nice too ;-) 15:56:19 well, you can write the C-based autoshit version and i'll do the linux-386-only version :) 15:56:22 isforths PRIME directive is to NOT require ANY external libraries 15:56:28 SPECIALLY not libc 15:56:44 thin: I think that, however, it's important to get youse guys involved.. Certainly there has got to be some of those DPANS docs that are agreeable, and I suspect youse folks would be all up for beating it into a common form - and reorganizing ;-) 15:57:01 if Linux libraries weren't so retarded you wouldn't be so scared of 'em :) 15:57:09 that's nice i4 - "back to bed.. back to bed" 15:57:23 ? 15:57:45 Mel Gibson 15:58:05 poppavic: a new forth standard is already in the works to be designed, so you don't have to worry about making it yourself :P 15:58:28 thin: sure I do - I don't much care for what I've seen. 15:58:49 then dont write a standard, write a forth 15:58:56 and.. how many of us want in on the new standard? i do 15:58:58 yeah, seriously 15:59:11 just like everyone else - and just as supported.. Wonderful. 15:59:25 not really a standard. more like FIG forth. 15:59:46 tcn: apparently, that's what PFE and GForth were supposed to be. 16:00:04 nah, they were ANS forths 16:00:10 neither of which counts as a REAL forth 16:00:19 yep - which is "the standard" 16:00:42 * kc5tja sighs -- does it have colon definitions? Is it interactive? Does it have a dictionary? Yes? Then it's a Forth. Thank you. 16:00:50 yah 16:00:56 I don't care what language it's written in, what libraries it does or doesn't need, etc. 16:01:06 Those things ultimately affect only speed and size. 16:01:14 But to say that GForth isn't a real forth is ludicrous. 16:01:24 It's just big and slow. 16:01:27 OVERKILL is what it is 16:01:30 All I care is that I can stop porting everything - and that we can pull out mechanics from where they do not belong. 16:02:02 hmm.. and when I was trying to use Gforth and PFE they were incompatible and incomplete! 16:02:14 yep 16:02:23 porting stuff in forth is a NON problem 16:02:29 I was trying to metacompile RetroForth (standalone) from gforth or pfe 16:02:30 and pfe is partially gforth, and gforth is partially pfe "supportive" 16:02:42 unless you are porting FROM ans crap 16:03:02 yeah, a Metacompiler would be great.. 16:03:10 then when I got to blocks, neither pfe nor gforth would do them right.. and there was more.. 16:03:11 I'd like to find some middle ground on writing Forth network apps. 16:03:33 * PoppaVic watches all the folks wandering in their circles ;-) 16:03:54 I don't know if anyone has any good I/O precedent I could read about, so I can see how my networking stack could work w/ existing code. 16:03:56 I don't like metacompilers anymore.. you can write 10 words in asm and the rest in forth.. 16:04:17 tcn: that's the point 16:04:34 hmm - I was thinking of f-pc and such - I'm old ;-) 16:04:46 poppavic its not wandering in a circle, its a case of "if it isnt broke dont fucking fix it" 16:04:48 you mean a same-platform metacompiler? 16:05:02 the only breakage ive seen in forth in YEARS is ans 16:05:31 --- join: ramnull (~nicad@12-241-145-39.client.attbi.com) joined #forth 16:05:43 What's up? 16:05:46 I agree that porting well-factored programs in Forth is more of a non-problem than anything else, but it's also true that having a nice, consistent run-time environment allows greater re-use of existing mechanics too. 16:06:13 For example, the backtracking and continuation support that I love so much is 100% incompatible between GForth, PFE, and Pygmy Forths. 16:06:22 i440r: if it ain't broke, fit it anyways! :P 16:06:24 Yes, it only takes 6 words to bring each of these distributions back into spec. 16:06:39 BUT, I have to research each of the platform's internal specifications, dictionary format, how the R-stack is used, etc. 16:07:11 I shouldn't ahve to do that. Either it should be 100% completely documented with the Forth itself, OR, it should agree to a relatively consistent standard. Hence, I feel, the latter is CommonForth's role. 16:07:21 Hey l440r, I got IsFrame(my quaint little nick for the FB IsForth extension) to actually Initialize the FB without segfaulting. Heh. 16:07:57 Modeset stills puts my terminal in tank however. 16:08:13 cool :) 16:08:17 send me the code! 16:08:43 isn't FB a 2.4 thing? 16:08:46 I440r_: If you dont mind rebooting to get your terminal back. 16:09:10 lol 16:10:24 I440r_: I still havent figure out how correctly link my assembler code into your isforth source. Heh. 16:11:01 gcc -o foo foo.c bar.c ;-> 16:11:17 send it to me and ill help you out when i get a chance :) 16:11:26 * ramnull nods 16:11:27 poppa you CANNOT "link" anyting to isforth 16:11:34 isforth will overwrite it 16:11:38 I know - it's useless ;-) 16:11:52 I440r_: Well, I figure your pretty busy with IsForth itself. 16:12:15 I440r_: Dont need a greenhorn like me slowing yah down. 16:12:36 You can link things to RetroForth though 16:13:10 Actually, linking in glibc .so's are pretty easy if you know how to look up Global Offset Table. 16:13:20 tcn: you started talking to any networking hardware w/ RetroForth yet? 16:13:20 sounds like a disadvantage :) 16:13:30 statically linking is DUMB 16:13:51 the whole link concept is a huge fucking gordian knot 16:14:18 I440r_: WRONG. AmigaOS has done static linking *PROPERLY* for years. 16:14:37 In fact, library dependencies are hard-coded in the software itself, as explicit calls to exec.library's OpenLibrary() function call. 16:14:39 My stuff links fine Sounds like a personal problem, to me. 16:14:47 amiga os is the exception to every rule 16:14:54 Just because *UNIX* doesn't statically link right doesn't mean the whole concept is bad. 16:14:56 including the rule that says "everything OOP is a pile of shit" 16:19:14 I440r_: Fired off my test code. Got a new revision in the works, now that I got a better handle on Assembly. 16:19:22 a7r: no networking yet.. could use libc under linux, though.. 16:19:52 Heh. 16:20:03 tcn: I've got the packet generation layer coming together, along w/ some state handling code for TCP,.. but I'm looking at the hardware side, for pushing packets down the wire. 16:20:08 I440r_: I just dont get those macros. 16:20:27 tcn: it's only IPv6 right now, but I could make IPv4 work under it just as well w/ a little work. 16:20:43 ramnull they are the most compelex part of isforth 16:21:07 a7r: for retro? cool! 16:21:09 I440r_: What's this .nolist stuff? 16:21:27 I440r_: It just pops up here there and everywhere. 16:21:31 tcn: it's not explicitly for retro because I don't have anything that'll run it.. but it's portable enough it should 'just work' 16:21:39 tcn: I've done it all w/ pforth on an OS X box so far. 16:21:43 the int part is the number of parameters passed to the macro 16:21:57 Aaaah. 16:22:05 the nolist part stops the macro from being expanded into the listing on every invocation 16:22:25 tcn: although I could use Bochs 16:22:36 I440r_: I see. 16:23:40 I440r_: I could do _variable_ 'cmap' , cmap , istruc tcmap ? 16:23:58 a7r: i dunno.. we're a ways off.. need serial/ethernet drivers first.. 16:24:15 no 16:24:24 the assembler doesnt know abut structures :/ 16:24:26 tcn: yeah, I guess that's what I'm wondering about.. what kind of ethernet device are you using in the box when you're testing Retro? 16:25:45 I440r_: The Nasm manual uses struc to declare a sequential array of memory locations, yes? 16:26:18 you cant pass a structure as a parameter to one of those macros 16:26:21 a7r: mostly ne2000 compatibles.. i think even my PCMCIA card is ne2k compatible, but then there's the pcmcia init.. 16:27:18 a7r: oh wait, i don't have a pcmcia lan card yet. and no LAN at the moment! 16:27:32 tcn: nod. 16:27:52 I've got a bunch of tulip cards, and most of my new gear is 3Com 16:28:04 I440r_: So I gotta make a var for each value. 16:28:05 a7r: I could bring over my old 386 and hook it to my other machine with coax. that's it. 16:28:19 tcn: nod. 16:28:46 a7r: ethernet & dhcp would be nice so you could plug into a DSL hub, though.. 16:28:58 tcn: how much work is required to get Retro on good terms with Bochs? 16:29:12 a7r: i thought it already works w/ bochs 16:29:26 tcn: okay, I'm just pulling down Bochs 2.0.2 for OS X, to try to get Retro booting. 16:29:48 a7r: good luck :) 16:29:51 I440r_: I could do _variable_ 'red_offset' , redoff , [tscreen + red_offset] ? 16:31:14 hmmm dunno, try it :) 16:31:23 yea you could prolly do that 16:31:37 no 16:31:43 erm it should be a constant 16:31:46 not a variable 16:31:59 * ramnull nods 16:32:14 why do you need to add new variable macros? 16:32:28 your modifying the kernel itself? - so you can have coded defs? 16:33:18 I440r_: I'm assuming I have to in order to give high level forth words direct access to those values. 16:34:01 Be back in a few minutes. 16:34:03 --- quit: ramnull ("This isn't Happy Hour!") 16:34:14 no. err you can create variables in forth hehe 16:34:17 variable blah 16:34:35 some-address constant blah 16:37:52 later guys 16:37:56 late 16:39:53 --- quit: tcn ("TinyIRC 1.1") 16:44:52 --- join: Klaw (~anonymous@ip68-101-120-167.oc.oc.cox.net) joined #forth 16:50:28 --- quit: fridge (Read error: 104 (Connection reset by peer)) 16:52:17 --- join: ramnull (~nicad@12-241-145-39.client.attbi.com) joined #forth 16:53:24 I440r_: The code macro pushes arguments on the stack eax, ebx, ecx, edx right? 16:54:09 no it doesnt 16:54:13 Errr... 16:54:17 Pops them. 16:54:56 there are 3 parameters to teh macro. the word name. its execution address and its label 16:55:10 the macro doesnt push/pop anything 16:55:25 it just creates a word header for that word and creates a label at its CFA 16:55:30 Gotcha. 16:57:01 I've got the Assembler code broken down into Initialization routines, mode control, term control, and drawing. 16:57:54 alot of that could be done in forth 16:57:59 SHOuld be 16:58:03 I'm using the convention |word| for critical routines. 16:58:33 * ramnull nods 16:59:49 I440r_: Well, this next revision should see very little Assembler code, except for the drawing primitives. 16:59:59 Damn, netsplit coming? 17:00:05 :) 17:00:58 I440r_: Have you considered using the Input Event system for your terminal code? 17:02:06 would it give me the ability to know key up/down for ALL keys and be able to sense shift, alt and control for ALL keys ? 17:02:13 if not... why bother 17:02:43 I440r_: I dont know. It hooks in under /dev/input/event* 17:03:25 ou. thats for USB devices isnt it ? 17:04:37 No. 17:04:51 For just about anything. Although primarily used for USB right now. 17:05:32 anything includintg the standard keyboard/mouse ? 17:05:38 It has mouse, joystick, and generic. 17:05:46 anyway i CANT use it 17:05:59 because it would limit isforth to 2.4+ kernels 17:06:11 Gotcha. 17:06:12 OK, I have to go to aikido soon. 17:06:40 bye all, i'm also going 17:06:42 --- quit: thin ("laters") 17:07:32 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 17:09:01 I440r_: I'm gonna go hack on the Frame some more. I think I know enough now make it actually do something. bbl. 17:09:37 I440r_: Revision .2 is coming. On it's way to a .1 release. Heh. 17:10:10 Be back later tonight. 17:10:13 --- quit: ramnull ("This isn't Happy Hour!") 17:33:44 howdie all 17:34:05 lo 17:34:52 --- quit: I440r_ (Read error: 104 (Connection reset by peer)) 17:35:33 I been gone for way to long 17:35:58 oh? well, you ain't been missin' much ;-) 17:36:29 hehe 17:36:32 like a year or more lol 17:37:45 again - you ain't missed much 17:37:49 lol 17:38:09 I am hoping Fractal has the network part of his forth out working 17:38:30 no idea - he hasn't spoken in over 10 hours 17:39:43 :( 17:40:26 last we spoke, he said the commonFORTH idea sounded interesting - and then we fell to asm fights in here & he toddled off to bed, I believe. 17:40:40 nasm or asm? 17:41:00 got me, never touch the stuff. 17:41:36 mostly we get arguments against C for asm - and then deride libs, objects, etc ;-) 17:41:47 bah 17:41:52 forth should be lib free 17:41:52 yeah 17:41:55 mostly 17:41:58 17:42:16 --- quit: a7r (Read error: 60 (Operation timed out)) 17:42:19 It is "lib free" - which is why everyone writes the same shit over & over ;-) 17:43:09 --- join: a7r (~a7r@206.72.82.135) joined #forth 17:43:32 well no all are lib free 17:43:38 example fractal's forth 17:43:48 but you can compile it with uclibc 18:27:59 --- quit: Speuler (Connection timed out) 18:28:12 --- join: Speuler (~Speuler@mnch-d9ba4af9.pool.mediaWays.net) joined #forth 18:48:38 --- quit: Fractal (Read error: 104 (Connection reset by peer)) 18:54:02 --- join: Fractal (onsv@new.cure.for.SARS.found.to.be.strongLSD.com) joined #forth 18:57:15 --- quit: PoppaVic ("calls it another Knight") 19:36:12 --- quit: a7r (Read error: 60 (Operation timed out)) 20:27:54 --- quit: sifbot (Read error: 54 (Connection reset by peer)) 20:32:22 --- join: sifbot (~sifforth@h0030657bb518.ne.client2.attbi.com) joined #forth 20:32:22 Type sifbot: (or /msg sifbot to play in private) 22:17:46 --- join: kc5tja (~kc5tja@ip68-8-206-137.sd.sd.cox.net) joined #forth 22:17:46 --- mode: ChanServ set +o kc5tja 22:35:11 --- quit: sifbot (Read error: 110 (Connection timed out)) 23:23:08 --- join: bwb (~bwb@ip68-4-121-108.oc.oc.cox.net) joined #forth 23:26:33 --- join: a7r (~a7r@206.72.82.135) joined #forth 23:26:53 hey 23:27:01 --- part: bwb left #forth 23:59:59 --- log: ended forth/03.05.07