00:00:00 --- log: started forth/03.04.14 00:22:29 --- quit: bwb ("Later") 00:48:09 --- join: futhin (futhin@dial-145.ocis.net) joined #forth 00:48:36 Heh futhin: What's up with "very argumentative"? 00:48:52 Am I really that arghumentative? 00:49:03 how old are you? 00:49:13 20, why? 00:49:23 you canadian? 00:49:27 Yes... 00:49:43 are you libertarian? 00:50:04 no, you aren't that argumentative 00:50:12 i remember a mild argument with you 00:50:21 No, I think the very idea of libertarianism is a disgusting attack on intellectualism. 00:50:40 but there was this othe guy on the channel that i confuse you with 00:50:49 lol 00:50:49 No, I don't really mind. 00:50:54 are you into intellectualism? 00:51:16 have you read any ayn rand? 00:51:34 Yes, I've read Capitalism, the unknown ideal 00:51:40 And... One other thing... 00:51:46 * futhin just finished reading The Fountainhead today 00:52:01 rereading anyways 00:52:14 i read it for the first time when i was 17 00:52:32 Yes, they're striking in naivity and gross leaps of logic... 00:52:33 about 5 years ago 00:53:08 hmm 00:53:12 well i haven't read what you've read 00:53:37 I plan on picking up atlas shrugged sometime soon 00:54:00 Well it applies to most right wing thought to varying degrees... 00:54:31 Actually, I don't really consider true libertarianism to be inherently "right wing" 00:55:09 But most "libertarian partys" are just organized, capitalist political partys that want to reduce the state for their own economic gains... 00:55:15 * futhin doesn't care about "right" or "left" distinctions, they just serve to confuse people :) 00:56:00 true libertarianism is still about selfishness as virtue 00:56:20 yeah i remember arguing with you 00:56:22 about economics 00:56:36 you have a weak grasp of economics ;) 00:56:44 i'm only joking a little bit 00:56:49 i'm not trying to start an argument 00:56:50 hehehehe 00:57:37 Well, I think it's pretty clear that anyone who argues basing an economy on libertarian principles has an even weaker grasp than I do, but I don't want to argue this. 00:58:20 lollll 00:59:10 i still don't understand how two people apparently capable of reasoning and perhaps similar education can disagree 00:59:28 it's a mystery 01:00:20 Well, actual political disagreements are usually based on ethics or morals, not so much education. 01:01:42 hmm, i dunno, i suspect that a lot of people who disagree have similar concepts of ethics/morals.. 01:02:17 but i could easily have gone the socialist route 01:02:22 instead of libertarian 01:02:52 the key difference is control over people & how much you trust people to behave, etc etc 01:03:13 and whether or not you believe you should care 01:03:37 for example, if i was greatly concerned about deviations from the "plan" then i would aim to exert more control 01:04:15 but there's a handy quote that i try to remember that goes something like "controlling people doesn't give them the opportunity to control themselves" 01:05:25 in the libertarian world, those who deviate from the plan have to be tolerated as much as possible.. and it's HARD to swallow the urge to control people.. 01:06:23 Yes, well fundamentally we probably both agree on a number of things. My problem with libertarianism is that it directly plays into the hands of established power systems, and if adopted on a large scale will doubtlessly result in higher concentrations of power and wealth for a select few. 01:07:10 how does it play into hands of established power systems? 01:07:50 * futhin tends to think of a libertarian state being established on a fresh island, not in the midst of already established power systems 01:08:46 Well, look at the libertarian partys in the US. They advocate, for instance, lowerinf minimum wages. They advocate larger tax breaks for the wealthy. They argue against trade unions. All of this will serve to increase the wealth/power of the established capitalist system. 01:10:21 Well, that was the idea behind the US, really. They wanted to establish what we would consider today a libertarian state in "the new world". 01:11:17 yes, hwoever the US constitution pretty much got perverted.. 01:11:19 Unfortunatley, pure free market capitalism didn't work as well as was hoped, forcing a stronger centralized state. 01:12:16 --- join: ramnull (~nicad@12-241-145-39.client.attbi.com) joined #forth 01:12:23 i'm not aware of what kind of problems happened, i'm not aware of the history, but just because the US didn't stay as a pure lassez faire capitalistic state doesn't mean it doesn't work 01:12:35 powermongers could've been responsible for the change 01:13:06 let me detail a little timeline of the changes to the government that i know of 01:13:58 1) in late 1800's the people in administration decided they wanted more power to change the constitution, etc so they passed some amendment to make future amendments much more easier 01:14:15 2) then they slowly started taking over the banking & currency system 01:14:15 er 01:14:18 not late 1800's 01:14:19 early 01:14:27 i dunno, my dates are bad 01:14:39 3) then they introduced taxes 01:14:50 4) and printed money and blahblahbalh 01:15:08 my memory is a bit hazy :D 01:15:47 the only book that i've read on libertarian thought is "restore the american dream" by robert j. ringer 01:15:56 and i stumbled on it quite accidentally 01:16:05 but he really presents a very logical argument i thought 01:17:36 Well, from what I know, government intervention was required in order to save a dying economy. 01:17:50 That is, in the early 1900s 01:18:02 Before that the US government was very, very limited. 01:19:02 And what economists call a "market stall", and what marx calls "increased concentration of the means of production" occured. 01:19:23 fractal: it's not clear to me that lower minimum wages, larger tax breaks for the wealthy, and no trade unions is a bad thing for the economy, from what i learned in microeconomics classes, a good economy affects everyone, not just the wealthy 01:19:41 And income tax, guaranteed employment, market regulation, etc, etc were the only things that saved the US at all... 01:20:06 Another of the reasons why the US economy was failing was because slavery was abolished, but that's another argument altogether. 01:20:23 Ah, you're speaking of Reagen's "Trickle Down Effect" 01:20:42 lower minimum wages means more jobs, larger tax breaks for the wealthy means multiple things, 1) more money for the wealthy to invest 2) less money for the government to waste etc, and trade unions also affects employment 01:21:59 when the government taxes, it takes money directly out of the economy with the purpose of redistributing the money, but by the time the money has been redistributed, only a small amount gets back into the economy 01:22:03 it makes a huge difference 01:22:44 That's one scenario, yes. Modern western thought seems to hope that that is the case, however there is strong evidence to suggest that lowering minimum wage will 1) create more money for the wealthy to invest 2) The wealthy will invest in a) getting more money b) automating the means of production in order to employ less workers. 01:23:44 Which was, I believe, the case in late 19th century america. 01:23:47 hello futhin :) 01:23:52 Actually, most of the world, at the time. 01:23:53 hello all 01:23:54 hey hey hey hey onetom_ :D 01:23:58 Hey onetom_. :) 01:23:59 you're back! 01:24:03 you're in the house! :D 01:24:09 the forth house 01:24:25 im here all the time w 1 eye @least 01:24:36 --- nick: onetom_ -> onetom 01:24:40 you said you were gone for a week 01:24:52 i regulary chk the quoted urls 01:25:06 oh, that wasnt a week unfortunately 01:25:15 we came back 2days l8r 01:25:35 coz the was snow & storm 01:25:48 futhin : Oh ya, would you mind linking to my forth page? www.hcsw.org/frugal/ ? 01:26:09 & all the plants/flowers, the subjects of our experiments has frozen 2 death 01:26:11 fractal: lets suppose canada stopped subsidizing farmers and what the heck, stops subsidizing the diary industry (including in quebec). lots of thousands of people are suddenly unemployed. bad thing or good thing? 01:26:14 It's a little sparse now, but soon I will release my forth for the TI-83+ graphing calculators and I will have more on it. 01:27:37 i'll update the website tomorrow or on wednesday 01:29:09 futhin : Well, bad for who? The unemplyed workers, obviously quite bad. The economy as a whole, probably bad as well. The small farmers already struggling to keep their heads above water, disatrous. The large farming conglomerates, perhaps bad and good: On one hand, they don't get an subsidy money, on the other hand, it will drive the smaller operations (who don't have enough capital) out of business in short order. 01:30:07 it might be a bit bad for the workers and maybe the economy initially 01:30:13 but 5 years or 10 years down the road? 01:31:36 Well it's difficult to say. It depends on too many things. 01:32:19 It might create massive monopolies, ruining the industry, or it might force an industry to be more frugal and save the industry. 01:33:32 But in many cases, it's a question of wether we want a, say, wheat industry or not. 01:33:54 For instance, in alberta, there was a massive drought this past year. 01:34:37 you're kinda forgetting about trade 01:34:40 Many of the wheat farms would plain be shut down if it wasn't for government funding. 01:35:12 protecting industries is more political than economical 01:35:36 trade is better, even at the loss of jobs. subsidization just ruins the benefits of trade 01:35:52 What affects economics affects politics, friend. 01:36:30 How so? 01:36:37 i meant political as in, politicians want to stay elected so they try to avoid upsetting the economy temporarily, even though it'll be better in the long run 01:37:26 Well, you're assuming that removing subsidys *will* be better in the long run. 01:37:30 Subsidies 01:37:38 i recommend Greg Mankiw's textbook "Microeconomics: canadian edition" (that's what i have) it was a very enjoyable read, read it 2 times 01:37:51 i'm planning on getting Greg Mankiw's Macroeconomics textbook 01:38:20 smart guy, youngest harvard economics professor i think 01:38:36 very well written book :D 01:38:49 converted me from communist to capitalist :D 01:38:51 What it be? People are actually chatting in here. 01:39:05 ramnull: yeah about non-forth stuff 01:39:08 you didn't notice? :P 01:39:20 pages and pages have been written since you joined the channel 01:39:34 Actually I was off on a different vt working on stuff. 01:40:15 I don't think there is any evidence whatsoever that removing subsidies on canadian farming will accomplish anything in the long but drive smaller operations out of business. 01:40:33 And keep them out of business. 01:40:54 uh, what's important about keeping them in business? 01:41:14 you're concerned about monopolies i guess 01:41:16 Farming? I sure the hell dont want Monsanto Corp. in charge of our food supply. 01:41:51 most monopolies are created by the government thru policy (because of powerfuly lobby groups) especially in the usa 01:42:28 isn't monsanto corp now Ag corp ? 01:42:30 futhin: These big agricartels make Enron look like the Mickey Mouse club. 01:42:42 futhin : Well, almost all self respecting capitalists are against monopolies, with the possible exception of hardnosers like Friedman. Adam Smith was very against monopolies. 01:43:11 ramnull: enron was a small blip on my radar screen, i didn't even bother to find out what it was or what it was about :P 01:43:21 futhin : Most monopolies are created by the free market in spite of the government. 01:43:30 lol 01:43:41 Lets see here, back in the 70s they were charged for poisoning some rivers in Mississippi. 01:43:41 Maybe you're forgetting that the government, when it can, heavily regulates against monopolies. 01:43:55 fractal: yeah, but it's an illusion 01:44:35 fractal: and the antitrust branch is a branch, the government is a big octopus controlled by millions of people 01:44:44 futhin : So let me get this straight. If we disband the government now, the free market's magic wheels will turn and monopolies will be destroyed? 01:44:45 Up here in Michigan they have guys that drive around and check to see if any of thier genetically modified stuff was scattered on some local farmers land, and then either force the farmer to pay up or torch his crop. 01:45:08 ramnull : I know, isn't that ridiculous? 01:45:14 fractal: there are some natural monopolies. note i said "_most_ monopolies are created by the government" 01:45:15 I've heard of similar cases. 01:46:23 futhin : Well there are cases when *publicy owned* monopolies can be beneficial. 01:46:30 Well, some of the locals in the rural communities are getting fed up. If the courts dont rule in thier favor, thier gonna start torching Monsanto crops. 01:47:10 But I can't think of a single case where a privately owned monopoly has been created by the government because of lobby groups. 01:48:59 Lets see here "create foo 2 allot" should give me enough room for an Integer and two characters. 01:49:32 * ramnull is switching back into Forth mode from his foray into Assembler. 01:49:47 ramnull : Well, a cell and 2 characters, yes. 01:49:57 Er... 01:49:59 No, sorry 01:50:03 Just 2 characters 01:50:15 create doesn't actually allocate any Paramater Field 01:50:22 Fractal: Start counting at zero right? 01:50:43 Sorry? 01:51:04 Fractal: Counted strings start at zero. 01:51:28 Er, yes... 01:51:56 Got it. 01:52:09 Fixed a slight bug. I was counting off from 1. Heh. 01:52:44 Er, ok... 01:52:46 I'll be back soon 02:05:19 --- quit: futhin (Read error: 113 (No route to host)) 02:39:28 --- quit: ramnull ("This isn't Happy Hour!") 03:05:41 --- quit: tgunr (Ping timeout: 14400 seconds) 03:55:39 --- join: deluxe (~deluxe@pD950FA75.dip.t-dialin.net) joined #forth 04:22:24 --- join: deluxe_ (~deluxe@pD950FA75.dip.t-dialin.net) joined #forth 04:24:55 --- quit: deluxe (sterling.freenode.net irc.freenode.net) 04:34:34 --- join: gilbertdeb (~gilbert@fl-nked-ubr2-c3a-29.dad.adelphia.net) joined #forth 04:49:10 --- join: PoppaVic (PoppaVic@tnt02-66-96.sfld.provide.net) joined #forth 05:15:14 --- join: mur (murr@baana-62-165-185-72.phnet.fi) joined #forth 05:15:34 Terve 05:15:49 terve :) 05:16:02 no school in sweden mondays? 05:16:37 * mur wonders because half of the swedes seem to be online in irc 05:16:39 Påsklov! 05:16:56 vilken dag er påsk? 05:17:18 Nästa helg 05:17:35 thought so 05:17:44 * mur plays some colonization :) 05:18:10 i was just hour in real world (tm) photoing .. well i did not photo anything actaully, but i took dog for a walk same time. 05:18:22 nice colours, but not much subjects 05:19:34 the colours are mainly brown gamut, black and white. very earthlike. although my companion (bark bark) restricted a bit 05:20:32 * Robert wants summer 05:21:36 does summer want you? :P 05:22:51 No idea :( 05:45:31 --- join: ircleuser (~tgunr@vsat-148-63-143-139.c189.t7.mrt.starband.net) joined #forth 05:57:19 --- quit: PoppaVic ("Really doesn't need a Reason.") 07:25:47 --- join: fridge (meldrum@zipperii.zip.com.au) joined #forth 07:42:27 --- join: mark4 (~mark4@1Cust228.tnt3.bloomington.in.da.uu.net) joined #forth 07:42:53 gilbertbsd you there ? 07:43:19 --- nick: mark4 -> I40r 07:57:38 --- quit: I40r ("Reality Strikes Again") 08:01:38 --- join: mark4 (~mark4@1Cust110.tnt1.bloomington.in.da.uu.net) joined #forth 08:12:12 --- quit: mur (Read error: 54 (Connection reset by peer)) 08:18:46 --- nick: ircleuser -> tgunr 08:19:20 --- nick: mark4 -> I440r 09:00:38 --- quit: I440r (Read error: 113 (No route to host)) 09:06:06 --- join: I440r (~mark4@1Cust128.tnt1.bloomington.in.da.uu.net) joined #forth 09:09:17 --- join: mark4_ (~mark4@1Cust143.tnt1.bloomington.in.da.uu.net) joined #forth 09:10:45 Hey 09:13:10 hi 09:13:28 i THINK ive fixed isforth for running under fbsd using linux emulation 09:13:28 not sure 09:15:51 oh heh and i did another release yesterday :P 09:16:39 for s/w under linux emulation I didn't think there was anything to fix! 09:16:50 yes there was 09:16:56 --- quit: I440r (Read error: 60 (Operation timed out)) 09:16:59 it wouldnt run under linux emu 09:17:06 --- nick: mark4_ -> I440r 09:17:21 but you might still have problems building the kernel in fbsd 09:17:33 binaries! 09:17:37 it would be built as a bsd executable, not as a linux executable 09:17:59 yes. you would need an already assembled kernel binary and then you could extend locally 09:20:45 so you re-wrote all of /lib/ncurses in asm for forth? 09:20:54 s/forth/isforth 09:21:01 no i rewrote it all in FORTH heh 09:21:05 not all of it though 09:21:11 and i didnt copy the ncurses sources 09:21:28 i read the man 5 terminfo page and figured out how to parse terminfo files 09:21:48 there were only a couple of items i didnt get from the man page 09:22:11 like. the ascs format string. its an ascii translation string to do alt charset stuff with 09:22:42 terminfo however is absolutely 100% totally fscked in the head. its the most crippled standard ive ever seen 09:22:56 even worse than mil std 1553 :/ 09:23:05 which can be REALY confuzing heh 09:23:21 mil std time? 09:23:34 it is not ambigous 09:23:35 no 09:23:45 oh mil std 1553 09:23:48 what isnt ambiguous ? 09:24:03 I thought you meant mil std time. 09:24:24 I dunno what std 1553 is. 09:24:33 its a serial communications protocol used in military aircraft 09:24:34 is terminfo described better elsewhere? 09:24:38 th4e DDC ACE chip etc 09:24:54 no. the problem isnt the descriptions. its TERMINFO thats fscked. 09:25:10 it 'grew' over the years didn't it? 09:25:34 specifically every single terminal in existance has CRIPPLED terminfo databases. the databases NEVER have a complete set of format strings 09:26:01 it can be a perfect standard. all they have to do is write NON crippled terminfo databases 09:26:25 i.e. all rxvt style terminals (ater, wterm... ) support the SGR format string 09:26:39 NONE of them show a format string for this escape sequence 09:26:45 this is REALY fscking annoying 09:27:07 because in order to change ANY single character attribute i have to do this 09:31:49 --- join: mark4_ (~mark4@1Cust146.tnt3.bloomington.in.da.uu.net) joined #forth 09:32:16 sorry about that my fone line keeps dying 09:32:29 anyway, as i was trying to say, its the terminfo databases that are messed up 09:32:37 what was the last thing i said so i dont repeat myself :) 09:32:45 because in order to change ANY single character attribute i have to do this 09:33:13 switc off all attributes using the SGR0 09:33:18 reestablish all attributes i didnt want to change. 09:33:25 re-establish the foreground and background colours which sgr0 reset to the default 09:33:42 and changing colour attributes is the absolute SLOWEST thing you can do in a terminal 09:33:53 greetings and salutation fellow forthers, i have not been on this forth channel before so wanted to say howdy 09:33:56 changing fg or bg is slower than moving the cursor arround the screen 09:34:12 terve tgunr 09:34:27 but they FORCE you to do it because rxvt's dont have a format for sgr, just sgr0 09:34:32 hi tgunr :) 09:34:39 you a forth expert or a newbie ??? :) 09:35:03 say newbie :P 09:35:08 Well, I have been using Forth since abut 1976 09:35:22 :O 09:35:24 oldbie 09:35:31 Was 3rd person to get FIG running 09:35:35 starting forth '79 edition right? 09:35:52 That was Leo 09:36:16 well mark4_ has a forth in asm for linux 09:36:26 Do I know any of you? Name here is Dave Carlton 09:36:28 and speuler has a forth in bash at forthfreak.net 09:36:42 gilbert. 09:36:48 I am a perpetual newbie. 09:37:10 LOL me too, I run the Open Firmware department at Apple 09:37:22 yeah. newbie. right. 09:37:52 how is forth at apple? 09:38:00 Alive and well 09:38:02 So, tgunr, have you finished that port of OF for x86? 09:38:03 I don't think many people know there is a forth lurking somewhere in its soul. 09:38:24 We have a staff of 6 09:38:32 LOL 09:38:39 --- join: kc5tja (~kc5tja@ip68-8-206-137.sd.sd.cox.net) joined #forth 09:38:47 --- join: mark4__ (~mark4@1Cust222.tnt1.bloomington.in.da.uu.net) joined #forth 09:38:50 hehe 09:39:08 how long has apple has a forth ? 09:39:13 If I acknowledged that ,well they would have to shoot me! 09:39:19 ok this is pissing me off now 09:39:21 grrr 09:39:23 dammit :/ 09:39:28 tgunr :-) 09:39:30 About 10 years now 09:39:34 wow. 09:39:41 '93! 09:39:48 what prompted them to use forth? 09:40:00 Sun 09:40:08 I was the 2nd hire at Apple for Forth, Ron Hochsprung wrote the original implementation 09:40:40 Yes, Open Firmware was going to be used for the CHRP boxes 09:41:08 * TreyB worked for Be, Inc. 09:41:24 TreyB: did the BE also have a forth in its soul? 09:41:39 CHRP? chirp? 09:41:44 I came on in '95 and Ron was using it when they went from 68000 to PPC 09:41:52 Cool, S! 09:42:07 did the se/30 have forth as well? 09:42:09 gilbertdeb: nope. Be's boot ROM actually contained a stripped down version of the kernel :-) 09:42:20 CHRP=Common Hardware Reference Platform 09:42:30 TreyB: something like lilo? 09:42:42 tgunr: i asked if you were new to forth and then my connection died again :/ 09:42:56 gilbertdeb: Probably something mroe like AmigaOS. 09:42:56 gilbertdeb: more like Linux BIOS. 09:43:10 kc5!!!!!!!!!!!!!!!!!!1 09:43:13 yo! 09:43:17 ltns :) 09:43:36 Heeheh :) 09:43:38 mark4__ he writes forth for apple's prom :) 09:43:40 I should be in college now. 09:43:44 Always learning Mark 09:43:57 But my car won't start (blew the 80A main fuse somehow), and it's pouring rain outside. The rain probably shorted something. 09:44:21 No, the first real production ROM with Forth was the original PPC machines 6100,7100,8100 09:44:49 They were PPC boxes with NuBUS 09:45:13 I came on with the next generation , 7200 was my project 09:46:28 Sun boxen also have Open Firmware in them. 09:46:44 so what is the main job of the firmware? 09:46:51 Booting. 09:46:53 Nothing more. 09:47:21 brb... 09:47:23 We build a device tree structure describing the hardware then boot the OS and hand of the structure to them 09:47:39 of=off 09:47:41 Oh yeah, I forgot about the device tree. 09:47:43 Sorry. 09:47:50 my keyboard is dropping chars :( 09:47:51 It's too early in the morning for me. 09:48:05 why forth... is that a complex job? 09:48:10 We are basicall a HAL to the OS 09:48:17 are you just passing like hardware addresses of the installed devices or something 09:48:43 sorry for dumb questions :) 09:48:46 I will show you an example 09:49:02 ianni: Forth is a very simple environment to implement, while offering an overwhelmingly powerful (even if not the speediest) language environment to write software in. This is nearly ideal for small device drivers and such. 09:49:11 *nod* 09:49:27 -> <- Empty dev screen ok 09:49:28 -> <- Empty .properties 09:49:29 vendor-id 000010de 09:49:29 device-id 00000200 09:49:29 revision-id 000000a3 09:49:29 class-code 00030000 09:49:31 interrupts 00000001 09:49:33 i've been intersted in forth for quite some time. I understand the language.. but as far as implementing it I have a way to go 09:49:33 min-grant 00000005 09:49:36 max-latency 00000001 09:49:37 subsystem-vendor-id 00000208 09:49:39 subsystem-id 0000a5b8 09:49:41 devsel-speed 00000001 09:50:08 i see 09:50:41 so the firmware is the initial bridge between the motherboard and the OS 09:50:45 in a way 09:50:46 Ah, device class three. 09:51:02 exactly, we also program all the MB chips in prep for OS 09:51:13 cool 09:51:43 tgunr: also in forth or in ppc asm? 09:51:47 --- quit: I440r (Read error: 113 (No route to host)) 09:51:51 speaking of which, I need to get back to programming a thermal calibration routine 09:51:57 i work in an apple/solaris shop.. do mac/and java development. wish it was forth 09:52:03 s/and // 09:52:13 mostly forth, some ppc asm in the kernel 09:52:15 tgunr: come back and join us some time. 09:52:25 I will be lurking here 09:52:29 Cool. 09:52:54 just starting to use gforth so I thought i would find a forth channel 09:54:38 you're in the right place 09:54:41 tgunr: have you seen my isforth? - its not finished yet but its getting there ":_ 09:55:04 btw, when was that interview with chuck? that was great reading 09:55:41 what is isforth? 09:56:28 mark4's baby! 09:56:36 isforth.clss.net "_ 09:56:45 no documentation other than the sources and the readme heh 09:57:01 ill fix that soon ennuff tho... erm i eventually that is :) 09:57:33 YAF 09:57:46 Forth is so malleable, why not? 09:57:59 I concur with Chuck that what's needed isn't a source-level standard, but a publication standard. 09:58:13 if you code assembler you sould have no problems :) 09:58:16 Despite the multitudes of different Forth dialects out there, I find my code to be extremely portable. 09:58:21 I think what we need is more standards 09:58:25 there just aren't enough of them 09:58:31 how many are needed? 09:58:35 im not sure what that means kc5 but i do know this. what we DONT need is the ans standard 09:58:36 how many does cobol have :) 09:58:43 What I want is a self documenting Forth development system like emacs lisp has 09:58:59 I just started using EMACS and am lovinf it 09:59:08 what were you using before? 09:59:14 I hope you'll come back to vim! 09:59:16 * kc5tja hates Emacs. 09:59:20 vi or bbedit 09:59:26 emacs rules 09:59:31 use joe. joe is crappy but its the least crappy of them all in linux "_ 09:59:33 well, vim has some really good qualities :D 09:59:37 :) even 09:59:52 * kc5tja is currently a VI user, and when I'm done, I'll be a THE user. 10:00:02 THE? 10:00:06 the only reason i see not to use emacs is speed. and it's quick enough for me on my dev machines.. 10:00:09 why don't you all use 'ed'. 10:00:14 it is the standard editor. 10:00:17 Jef Raskin's The Humane Environment 10:00:21 * kc5tja is going to port it to Linux. 10:00:22 i just use vi on remote unix boxes or for amazingly huge files 10:00:27 C:\DOS\EDIT.COM 10:00:29 I refused years ago to learn another editor so I stuck with vi, I wish now I had looked at emacs harder, it is great, as extensible as Forth is 10:00:34 edlin's better 10:00:38 LOL try ed 10:00:41 --- quit: mark4_ (Read error: 113 (No route to host)) 10:00:44 I love ed 10:00:45 theres already a version of THE for linux isnt there ? 10:00:55 kc5tja: whats neat about THE? 10:00:59 i want multi edit version 3.01 for linux 10:00:59 I've tried to use emacs a few times, but whenever it comes to harder things like regex substitution, I head straight for vim 10:01:11 fridge - why? 10:01:19 its what I'm used to 10:01:19 note. NOT the 7.x versions. the 3.0x versions from the early 80's is what i STILL use in dos 10:01:23 *nod* 10:01:25 I use sed :) 10:01:25 gilbertdeb: Well, for one, it has a selection *stack*, which makes text editing substantially simpler in a number of cases. 10:01:36 selection stack? 10:01:44 have I been deprived? 10:01:53 ha 10:01:56 Yes, you can select one block of text, select another block, then give it the "SWAP" command, and it'll exchange the two blocks. 10:02:05 ianni: I wish there were a sed for binary editing! 10:02:13 I liked the old Polyforth block editor, simple and fast 10:02:30 ah I see what you mean. 10:02:55 tgunr i never liked polyforth and my boss had even patched it to use flat files :/ 10:02:55 I was looking at leo, but it might be broken. it is simply an outliner with a different viewing pane... 10:03:00 http://humane.sourceforge.net -- read through that site for THE-related material. 10:03:01 but you can do that sort of thing in there as well. 10:03:15 actually, i was using chipforth for the 8051 which used polyforth for the HOST 10:03:20 tgunr: VIM. Return to VIM. 10:03:20 gilbertdeb: No, not anything *close* to what THE can do. 10:03:30 are you serious? 10:03:43 THE isn't just a text editor. It's a user interface design. 10:04:00 didn't jeff raskin work for apple as well? 10:04:14 Jef (one F) Raskin was responsible for the MacOS user interface, yes. 10:04:20 wasn't he one of the ui gurus for the mac? 10:04:22 touche. 10:04:23 I was using PolyForth on the KKIA airport project in Saudi Arbia, it was great 10:04:49 hey, there have been rumors of a forth in saudi arabia... 10:04:53 Yes, Jef was on the first Mac team 10:04:54 so you were one of those? 10:05:08 is it still there? 10:05:11 yes, i worked on the project for about 5 years 10:05:14 damned arabs :/ 10:05:18 heh 10:05:18 --- nick: mark4__ -> I440r 10:05:31 how do they use it? 10:05:34 as far as i know it is 10:05:34 for their radars and such? 10:06:38 gilbertdeb: Are you familiar with the Canon Cat at all? 10:07:09 We used it for security systems, water treatment plant, fuel farm, power plant, runeay light and a couple more 10:07:11 hmmm. you mentioned it. 10:07:23 tgunr: thats a lot more than an airport!!! 10:07:31 gilbertdeb: It was a computer whose entire system software was written in Forth. It was also largely designed by Jef Raskin after he left the Macintosh project. 10:08:10 We monitored about 30,000 'points' twice a second using about 1000 8086 talking to 11 PDP-11's 10:08:16 gilbertdeb: The Cat was the first successful demonstration of his humane interface concepts (though it didn't go by that name back then). THE is a modernized version of the system software in the Cat. 10:09:08 tgunr: do you think they'll convert to C or some such soon? 10:09:21 Although, for MacOS, he's writing it in Python. For Linux, I'm writing it in a combination of C (to hook into the Xlib library) and Forth. 10:09:28 or are there enough 4thsmiths in saudi arabia to take care of it? 10:09:55 so there isn't a linux version yet? 10:09:59 No. 10:10:02 well kc5tja we are waiting :D 10:10:38 tgunr: can you see privmsgs ? 10:10:46 Jef was ecstatic when he learned I knew Forth too. :) "I personally would favor Forth," Jef wrote to me. Both myself and Billy (the fellow who is helping me with the implementation) also both know Forth. 10:11:01 kc5tja: you've met him? 10:11:02 there is an editor called THE in linux, im sure 10:11:18 I440r: i think it is a pico clone. 10:11:26 There is, but it's not the same editor. 10:11:30 aha 10:11:43 I should stop calling it an editor, because it really is vastly much more. 10:11:50 an environment 10:11:52 if you will 10:11:54 * ianni is interested 10:11:54 kc5tja: an IDE? 10:12:03 is there a url ? 10:12:04 gilbertdeb: If you want it to be, sure. 10:12:07 the.sf.net 10:12:10 Not for the Linux version. 10:12:13 humane.sourceforge.net 10:12:35 ahh 10:12:39 wrong one 10:13:02 Yeah, i'm not sure why "the" exists -- maybe Jef used that first, then decided to go with "humane" instead later on. 10:13:32 But my first goal is to get THE/X11 to self-host -- that is, to use THE to edit and run THE itself. 10:14:17 that sounds like a smalltalk 10:14:26 so a THE vm right? 10:14:46 THE isn't a virtual machine. 10:14:47 Forth is the Vm. 10:14:49 VM even 10:14:55 THE is the GUI for the environment. 10:15:40 * gilbertdeb is cornfuzzled 10:15:44 like rebol? 10:15:50 ?? 10:15:55 I don't see how Rebol compares. 10:16:24 gui environment etc ? 10:16:34 Rebol in and of itself isn't graphical. 10:16:41 It's the language. 10:16:43 Rebol/View is the GUI package for it. 10:16:47 Take a Forth environment. 10:16:50 Slap a GUI on it. 10:16:55 That's what I'm doing. :) 10:17:14 Only instead of the traditional WIMP interface, it'll be based on humane principles. 10:17:17 like rebol/view ? 10:17:25 I am rather partial to its simplicity :D 10:17:44 oh I see! 10:18:06 I don't know enough of Rebol/View to determine how "simple" it is. Though I've seen examples, a lot of the features of Rebol/View come at a severe time penalty. 10:18:24 oh not on those ghz babies 10:18:39 Compared to my Forth-based environment, it will... :) 10:18:53 My GUI architecture will be based on scene-graph techniques. 10:19:22 This means the Forth software describes the layout of the screen (similar to HTML, Rebol/View, PDF, etc), then notifies the environment when it's done. 10:19:53 The environment then calls upon a "scene renderer" to actually update the display with the new visuals. 10:20:39 would it be simple to do simple things with? 10:20:48 There is prior art to this, of course: MacOS X has DisplayPDF, then there's the berlin/Fresco project under Linux. 10:20:54 eg in rebol/view a button is as follows: view layout [ button ] 10:21:06 Nothing is *ever* as simple as it seems. 10:21:06 not even smalltalk lets you do that! 10:21:24 Smalltalk is easier: just *draw* the button on the window, and it's live. 10:21:30 ugh. 10:21:35 No programming needed, unless you actually *WANT* the button to do something. 10:21:39 I have nightmares featuring squeak. 10:21:55 And that's where all the complexity ever comes from. 10:22:06 the tunes ppl like squeek i think 10:22:17 well, rebol uses 'words' just as forth uses 'words' 10:22:23 For example, in my environment, to display a window with a button centered on it, you'll probably do something like this: 10:22:37 I440r: the tunes ppl like forth too! 10:22:48 thats why they put clog to keep an eye on us :D 10:22:48 Create a label that reads "Hello world!" 10:22:52 not realy. Fare does 10:22:52 Create a button that contains the label. 10:23:01 but water could care less methinks :) 10:23:05 Create a horizontal layout that contains the button, and set it to "centered" 10:23:06 ah water. 10:23:08 and tcn has all but abandoned forth "_ 10:23:11 can I say mystic? 10:23:11 :) 10:23:18 Create a vertical layout that contains the horizontal layout, and set it to "centered" 10:23:29 Create a window that contains the vertical layout. 10:23:33 Add the window to the display tree. 10:23:41 view layout [ across button "Hello world" ] 10:24:01 OK, but what does that actually **DO**? 10:24:16 Does that open a window with a button smack in the middle of it, always centered regardless of window size? 10:24:19 to display a window with a button centered on it, 10:24:26 yes. 10:24:30 What happens when the button is clicked? 10:24:32 infact, across is redundant. 10:24:37 What about more sophisticated GUIs? 10:24:41 kc5tja: you have to give it a task... 10:24:44 hold -- phone 10:25:01 view layout [ button [block containing some tasks to do] ] 10:25:43 back 10:26:07 OK, but that doesn't address the issue of making more sophisticated GUIs. 10:26:29 what would you like to do? 10:26:31 I've seen Rebol/View code before, and some of the more sophisticated examples really aren't a lick simpler than, say, GTK or complex HTML. 10:26:46 Well, how about implementing a text editor display? 10:26:50 complex html is simpler than simple gtk imo 10:26:59 I hardly think so. 10:27:18 :) sayeth the reader of gtk. 10:27:23 openstep rules 10:27:38 is gtk object obfuscated ? 10:27:45 i know QT is 10:27:52 Which brings the matter back to my original question: WHAT IS SIMPLICITY? 10:27:59 kc5tja: python 10:28:01 Object orientation is a mandate for GUI design. 10:28:01 rebol 10:28:06 asm :D 10:28:19 gilbertdeb: Ever see "simple" Python code for putting up a real-world GUI? 10:28:21 It ain't simple. 10:28:33 kc5tja: which is why I am so partial to rebol. 10:28:40 I haven't seen anything simpler yet. 10:28:44 kc5 - no thats just the way they all do it - i dont hate OOP, i LOVED the amiga operating system and gui 10:28:45 not tcl/tk. 10:28:47 There is simplicity in the code (Rebol/View), simplicity in the architecture (scene graphs), ... 10:28:52 unless you can show me some other language ... 10:28:53 i jsut think 99% of oop code IS obfuscated 10:29:09 looking at anything remotely like GTK i would agree with you I440r 10:29:16 I440r: the amiga os was written by the rebol author! 10:29:18 Simplicity in the code != simplicity overall. 10:29:25 who was a 4thsmith!!! 10:29:27 Rebol/View is a *frighteningly* complex piece of software. 10:29:33 bah. 10:29:38 isnt he dead ? 10:29:40 well, ok, i agree nonetheless 10:29:43 it runs on 40 different platforms unchanged. 10:29:46 Carl Sassenrath? He's alive and well. 10:29:50 I440r: www.rebol.com 10:30:22 you now have 2 reasons to love rebol: written by a 4thsmith AND the amigaos author 10:30:24 gilbertdeb: The other thing you **MUST** remember is that Rebol does a ****LOT**** under the hood for you, as a natural part of the language. What does Forth ever do "for" you? 10:30:26 no i remember, its the designer of the amiga that died, not the os coder :) 10:30:42 I440r: Jay Minor is the one who died. 10:31:03 kc5 yea :( 10:31:06 *sniff* 10:31:11 kc5tja: 4th does on the bare metal level what rebol does on the web/gui level methinks. 10:31:31 gilbertdeb: That statement really doesn't make sense in the context of the conversation we're having. You asked me if the GUI interface was "simple." 10:31:34 I asked, "What is simple?" 10:31:45 The answer to your question doesn't exist. 10:32:02 kc5tja: I was reacting to 'what does forth ever do for you'. 10:32:25 Either I can make it simple to program, whereby I cripple the capability of the GUI substantially, or I make it simple in architecture, where the programmer is responsible for putting up with some degree of complexities. 10:32:27 simple meaning you don't have to read a whole book to finish a hello world. 10:32:30 or a calculator 10:32:49 or some such thing involving files, menus and such. 10:32:51 gilbertdeb: Complex things are complex. Sorry. 10:33:05 kc5tja: bad interfaces are complex 10:33:10 no language can simplify a problem, the complexity of the given problem cannot be simplified by a switch of programming languatge 10:33:11 I think ed has a simple interface 10:33:13 gilbertdeb: Nope. 10:33:17 and you can do incredibly complex things with it. 10:33:18 gilbertdeb: Complex things are complex. 10:33:34 Yes, and I need a book to do it! 10:33:36 nor can it be simplified by OOP or non oop. 10:33:36 kc5tja: Design. 10:33:54 changing language/methods does not alter the complexity of the given problem 10:33:57 I440r: I think it can. 10:34:06 gilbertdeb: I have to be honest with you, if you just put a piece of Rebol/View code in front of me, I would have NO idea what it would do. 10:34:06 thought is jostled along by language. 10:34:55 view layout [button "Hello, World"] 10:34:56 brb, i gotta go clean up the trash that the wildlife messed up :/ 10:35:05 Means nothing to me. 10:35:17 What does 'view' refer to? 10:35:18 A window? 10:35:19 a button with "hello world" on it. 10:35:20 the screen? 10:35:26 it refers to a window. 10:35:27 layout -- is that a verb? An object? 10:35:37 How do I know it refers to a window? 10:35:43 What if I want it to refer to the whole screen instead? 10:35:49 it says so in the manual. 10:35:54 Alright. 10:36:02 but it does not say so on page 955! 10:36:07 But you claim that simple means not having to read the manual. 10:36:18 not having to read a really think manual. 10:36:24 big difference I'd say. 10:36:24 Bull. 10:36:31 s/think/thick 10:36:32 I cry every time I hear people say things like this. 10:36:37 why is that? 10:36:49 kc5tja: incidentally I came upon this conclusion ... 10:36:51 Because people aren't willing to invest the time needed to learn things. 10:37:11 completely btw... computer is a form of literature ... 10:37:18 ie the college subject 10:37:27 The AmigaOS GUI is arguably one of the simplest GUI environments in the known world, yet it had an 800-page book (Amiga Rom Kernel Reference Manual: Libraries & Devices, Volume 1) 10:37:31 you read a volume, comprehend it, and think in its terms. 10:38:10 but how many computer geeks willingly sit through a course in lit? 10:38:11 :) 10:39:26 so kc5tja you want us all to read 1000+ paged manauls when the whole damned thing could have had a simple design? 10:39:39 wouldn't you say smalltalk-80 was relatively simple? 10:40:06 afaik there were only two books for the whole language and its implementation!!! 10:40:26 well, NSOpenPanel bugs that I had.. 10:40:30 oops 10:41:23 What is simple? 10:41:31 Smalltalk is a *BEAUTIFULLY* simple *ARCHITECTURE*. 10:41:43 simple is a design objective. 10:41:44 But programming it was somewhat of a bear, because the programmer had to remember a number of details. 10:41:47 No. 10:41:49 No 10:41:50 No 10:41:50 No 10:41:50 No 10:42:01 Simple is always subjective when used on its own. 10:42:03 por que no? 10:42:15 To say that "A is simple" is MEANINGLESS. 10:42:24 You must qualify A -- what part of A is simple? 10:42:33 My car's engine is simple. 10:42:36 lets say 'saying a' is simple. 10:42:40 It's rotary! It has only three moving parts! 10:42:46 is it a mazda? 10:43:13 But I sure as hell wouldn't want to rebuild the engine myself -- the clearances and tolerances of the engine's components are so much more stricter than a normal engine that it's WAY too easy to make a mistake in a rebuild. 10:43:28 So is it really a simpler engine? 10:43:40 Simple in operation, simple to make, but NOT simple to put together. 10:43:49 Yes, it's a 1986 Mazda RX-7. 10:43:54 :D 10:44:19 you just had to travel in time, make yourself own and mazda and come back here didn't you? ;) 10:44:34 I've always owned a Mazda. 10:44:42 When we first met, I had a 1980 Mazda RX-7. 10:44:56 whats so great about them? 10:45:04 the old ones in particular 10:45:05 They're user friendly cars. 10:45:10 you don't say. 10:45:18 and a buick lesabre isn't? 10:45:25 or a honda civic? 10:45:28 No, I have to agree that it isn't. 10:45:43 The last time I sat in a Buick, I had back pains because the seats are not at all ergonomically shaped. 10:45:53 hehehe 10:46:01 detroit will bend your back for you. 10:46:21 Never drove a Honda Civic, but I did drive in a Honda Accord once. The thing I don't like about them is the visibility of the car. Too many blind spots. 10:46:50 so the old mazdas are simply well designed you think? 10:46:55 (A Honda Prelude, however, is vastly superior to an Accord -- I'd call the Prelude a very user friendly car) 10:47:00 Absolutely. 10:47:16 And they give nice tactile feedback, and the rotary engines are smooooooooooth. 10:47:25 and when they break? 10:47:31 They're still smooth when they break. 10:47:40 back :) 10:47:42 I mean who fixes em? 10:47:59 You take them to a Mazda-certified repair shop or to a Mazda dealer. 10:48:10 would you recommend one to anyone? 10:48:14 No. 10:48:14 how old ought it be? 10:48:22 :O why not? 10:48:27 Not unless you lived in Oceanside, CA. 10:48:41 is it Mazda capital of USA? 10:48:49 Heavens no. 10:48:53 But it's no small-fry either. 10:49:11 We have Mazdaspeed, Mazdatrix, and Racing Beat all nestled comfortably up in the Los Angeles area. 10:49:22 Florida has Pettit Racing. 10:49:43 does that involve mazda too? 10:49:48 Here, I'd take my car to Mazdatrix or to Racing Beat. Either one (and they constantly refer business to each other as well). 10:50:09 Yes, Pettit Racing is pretty much the country's leader in equipping RX-7s with 3-rotor engines. 10:50:14 (they come with 2-rotors normally) 10:50:36 Although Mazdatrix was recently commissioned to make a 3-rotor aircraft engine putting out 900HP. 10:50:51 aren't 2 rotors better? 10:52:02 Better only from a fuel economy point of view. 3 rotors are even smoother (think V-12 smooth here) and more powerful (a 20B-REW puts out about 310HP while the 13B-REW puts out about 255HP). 10:52:41 And this is WITHOUT porting. 10:52:50 If you port the engines, the power goes up astronomically. 10:53:00 A bridge port on a 13B-REW will give you around 500HP. 10:53:19 A bridge port on a 20B-REW will give you around 800 to 900HP or so. 10:53:27 so it is a 'simple' engine and its power arises from that ? 10:53:34 In part. 10:53:50 why do'nt they make them that way anymore? 10:54:03 No valves, no camshafts, no timing chains, no rockers, no lifters ... all that contributes to the engine's power by letting the rotors spin faster. 10:54:08 They do. 10:54:19 http://www.mazdausa.com -- look under RX-8. 10:55:15 heh. its all yuppied out :) 10:55:24 The reason Wankels don't appear in more cars is simple enough though: fuel economy. These engines are sports car engines, not economy car engines. A 2-rotor engine is equivalent to a V-6 in terms of fuel consumption. 10:55:32 Yuppied? 10:55:52 so the wankels consume more fuel? 10:56:29 No, but they consume roughly the same amount of fuel as any equivalent power engine would. 10:56:43 I mean, a 250HP engine WILL consume twice the amount of fuel as a 125HP engine. 10:56:50 Laws of physics demand that it be so. :) 10:57:54 what does simplicity mean to you? 10:58:02 eg would you say forth is simple? 10:58:20 Simplicity to me means that I can understand a certain aspect of it. 10:58:30 just a part? not the whole? 10:58:31 Forth is simple to me because I can understand how everything fits together. 10:58:33 forth CAN be simple. isforth isnt :) 10:58:40 awwww I440r. 10:58:51 Yes, just a part. 10:58:59 kc5tja: thats what I meant by 'ed' being simple. 10:59:00 Let me give an example. 10:59:10 I don't know the c code behind it, but I know the editor well. 10:59:14 To add two numbers in a computer, you would have to do this: 1 2 + 10:59:17 (assuming Forth) 10:59:46 The 1 2 part pushes the operands on the stack, and are needed to set things up for the + part. 10:59:56 That + part represents a certain minimum level of complexity, right? 11:00:16 mmm in terms of its logic? 11:00:21 In any terms. 11:00:28 To add two numbers, you must say, + 11:00:34 yes. 11:00:45 So that sets the minimum amount of complexity for addition. 11:00:54 Anything else is more complex (e.g., NEGATE 1+ -) 11:01:13 Therefore, a program that requires you to use the + operator four times is four times as complex. 11:01:20 no. 11:01:21 By necessity, not necessarily by definition. 11:01:42 Yes 11:01:44 I don't think it scales that way. 11:01:50 Let C represents some measure of complexity for + operator. 11:02:15 THen four + operators means you have C+C+C+C = 4C complexity. 11:02:15 Oh, but it does. 11:02:15 a + is a + is a + is a + 11:02:23 Yes, and that's WHY it's 4C and not just C. 11:02:24 the meaning of it does not change at all. 11:02:37 Because now you're not talking about the interaction of +, you're talking about the interaction of the whole program. 11:02:46 Did I say that the meaning of + changes? 11:03:04 you said the meaning of the program increases in complexity. 11:03:09 and I don't think so. 11:03:17 The meaning of the program increases in complexity. 11:03:21 + doesn't change. 11:03:28 if you had C + C / C * C ... then i'd agree. 11:03:28 The program consists of four + operators. 11:03:44 C'mon!! This stuff is measurable! 11:03:55 We *KNOW* that + and - takes a certain minimum amount of time to execute! 11:04:01 We *KNOW* that * and / take longer! 11:04:11 We *KNOW* that + + + + takes four times as long to execute! 11:07:20 This isn't just heresay! 11:07:20 This is hard science! 11:07:20 if you mean complexity in terms of exectuion time sure. 11:07:20 but complexity in comprehension? no. 11:07:20 But it's NOT just in terms of execution time. 11:07:20 * kc5tja sighs 11:07:20 Forget it. 11:07:20 I give up 11:07:20 :) 11:07:20 I can't argue with a brick wall. 11:07:20 where would the brick wall be? 11:07:20 Instead of trying to combat me every step of the way, please at least TRY to consider my point of view. 11:07:21 do you see what I'm saying at all? 11:07:21 Yes, and I feel it's invalid. 11:07:21 hehehe. 11:07:21 For any given "thing" you want to accomplish on a computer, you **MUST** go through a certain minimum number of instructions to do it. 11:07:21 but there is nothing to be done about the complexity. 11:07:21 You MUST!! 11:07:21 See, this is what I'm talking about. 11:07:21 I'm **DEFINING** complexity here! 11:07:21 It has *EVERYTHING* to do with complexity versus simplicity. 11:07:21 But, never mind. 11:07:21 I give up. 11:07:21 if you insist :D 11:07:21 I do insist. 11:07:21 You don't give me any other choice. 11:07:21 sure I do. 11:07:21 How's that for simplicity? 11:07:29 I am trying to see your way you see? 11:07:35 No, I don't see. 11:07:42 it is complex :| 11:07:51 I'm trying to explain things, and you're repeatedly telling me that what I'm describing isn't complexity. 11:08:10 Or, at least, isn't even close to a measure of complexity. 11:08:26 there is something amiss. 11:08:47 I am thinking complexity in people terms, and you are thinking complexity in execution on a computer terms. 11:08:53 No, I'm not. 11:09:12 unclearly, I missed something. 11:09:21 Simple is minimal. 11:09:34 This is where the phrase, "Less is more" comes from. 11:09:44 I know _that_. 11:09:46 it is a mantra! 11:09:59 And in computer science and practice, the measure of time taken to do something, is a **DIRECT** measure of complexity of a system. 11:10:35 Remember the RISC versus CISC debacle back in the 80s and 90s? 11:10:44 remember? 11:10:52 heheh I got an i2 just to play with risc ! 11:11:00 I only got it running what 6 hrs ago? 11:11:09 Even the MISC propeganda take the same route: F21s execute their instructions in mere nanoseconds while similar processors in the same technology take microseconds. 11:11:31 kc5tja: the simplicity improves the speed. 11:11:38 or is that not what you meant? 11:11:39 if you have to do something simple a lot of times, does that make it complex? 11:12:15 fridge: Depends. Most microprocessors consist of extremely simple instructions, but their combinations can often be quite complex. 11:12:18 I don't think so fridge 11:12:33 fridge: it makes it tedius :D 11:12:51 gilbertdeb: Yes, the simplicity improves speed. Therefore, time measurements can be used as a guage for complexity! Which was my whole point! 11:13:33 but I don't see how doing '+' 4 times is a complex operation. 11:13:43 it can't be avoided if the need is to add 4 times. 11:13:46 I didn't say it was complex. I said quite distinctly it was MORE complex. 11:14:00 Specifically, four times as complex. 11:14:04 shades of grey mon ami. 11:14:18 but how is that complexity to be avoided? 11:14:21 If the complexity of + is near zero, then 4 times near zero is still going to be near zero, though it will be measurably larger. 11:14:36 gilbertdeb: THAT IS MY POINT -- YOU CANNOT AVOID IT. 11:15:02 For ANY operation you want to perform on a computer, there exists a certain MINIMUM number of instructions you MUST execute to achieve your goal. 11:15:22 I'm not saying there exists an upper limit -- Windows proves conclusively that the sky's the limit in complexity. 11:15:32 kc5tja: yes. the simplest being 'not'. 11:15:51 But there definitely IS a lower limit. 11:15:56 THis is why software patents suck eggs so badly. 11:16:09 If they patent that minimum, and they usually do, you're bloody screwed forever. 11:16:19 kc5tja: screw them. 11:16:44 Something is "simple" to me when the complexity of the solution approaches the minimum complexity. 11:17:12 something is simple to me, when the operations involved are themselves inherently simple. 11:17:21 sprt(x) is not simple to me. 11:17:27 Well, that's too narrow a definition, but that's what makes you happy, then go for it. 11:17:28 sqrt(x) 11:17:30 you cannot change the compexity of a problem, you can only change the complexity of the solution to it 11:17:50 kc5tja: isn't that what risc is? simple simple simple ? 11:17:57 * kc5tja nods to I440r -- thank you. I'm not sure I would have arrived at so "simple" a statement. 11:18:07 Why isn't sqrt(x) simple? 11:18:14 is it? 11:18:49 RISCs today aren't simple by any means. But they are simplER than CISC architectures, which is why they're usually faster. 11:18:51 heh 11:19:00 it took me a while to thunk it up "_ 11:19:03 :) 11:19:16 brb - getting coffee 11:20:28 MISCs are by far the second simplest processor architecture I've ever seen. 11:20:38 The first being MOVE architecture processors. 11:20:59 But MISCs are definitely a heck of a lot more convenient than MOVEs, that's for sure! 11:21:15 kc5tja: according to what I am reading here about the r10k, the r2k is a subset of the > r2k chip. 11:22:10 The MIPS series of RISCs are an excellent example of relatively simple designs. PowerPCs, however, aren't nearly as simple as MIPS processors. 11:22:16 Nor is 88000, i960s, etc. 11:22:33 For what it's worth, my favorite "RISC" architecture processor is, in fact, the R4400 series. 11:22:51 --- join: mur (murr@baana-62-165-188-207.phnet.fi) joined #forth 11:22:54 kc5tja: I got an r10k 11:22:56 It provides a nice balance between simplicity and hardware complexity to get what I want to do done quickly and easily. 11:23:18 terve 11:23:21 R10Ks are nice, but their hardware is complex compared to the R4400. The payoff is that it runs software faster. 11:24:17 Frankly, I'd like an array of MISCs in a single chip, and just multi-thread between them. That'll give the same long-term benefits as all these superscalar, pipelined processors, and for a greatly reduced investment in hardware. 11:24:17 R10K = risc ? 11:24:22 Yes, the MIPS R10000. 11:24:46 But here again, even MISC is complexified somewhat by requiring some kind of bus arbitration between all the processors. 11:25:20 The 25X "solved" this problem by simply not having such a system -- each processor represented a whole computer unto itself, communicating only with its adjacent processors by means of a dedicated serial bus. 11:25:41 But now the system software is made more complex because you need to have communications protocols and whatnot in it, ... 11:25:45 So there are design tradeoffs. 11:25:55 Good engineering is knowing when to make those tradeoffs. 11:27:28 humanists shoudl design the interface and purpose, engineers how it is done 11:27:35 and with no compromises 11:28:27 there have to be. 11:28:36 mur: we don't live in a parallel universe yet. 11:28:42 or a multiverse for that matter. 11:28:51 --- join: mark4_ (~mark4@1Cust76.tnt3.bloomington.in.da.uu.net) joined #forth 11:28:56 ?!? 11:29:25 mur non-compromise does not compute in this universe. 11:29:47 grrr damned fone company/isp 11:29:49 in practical sense. commecial usage makes more compromises than sollutions 11:30:18 smiling bee band. sounds nice :) 11:36:18 --- quit: mur (Read error: 104 (Connection reset by peer)) 11:36:29 back 11:36:33 been on the phone. 11:36:38 whats the move arc? 11:36:56 That is a processor architecture that has zero instructions -- or one instruction depending on how you look at it. 11:37:07 The "opcode" is divided into two fields: Source and Destination. :) 11:37:30 Each cycle, one register contents is "moved" (hence its name) from the source to destination. 11:37:46 More advanced MOVE architectures are actually VLIW -- they have multiple sources and destinations per instruction. 11:37:55 --- join: mur (murr@baana-62-165-188-207.phnet.fi) joined #forth 11:38:11 So to add two numbers together in a MOVE, you'd do something like this: 11:38:15 ALU_A := R0 11:38:18 ALU_B := R1 11:38:31 ALU_OP := constant_ADD 11:38:37 R2 := ALU_Results 11:38:43 or something like that. 11:39:02 Usually, the hardware can trigger the specific ALU operation based on which result register you're reading: 11:39:04 ALU_A := R0 11:39:07 ALU_B := R1 11:39:10 R2 := ALU_ADD_RESULT 11:39:25 what is ALU 11:39:32 Arithmetic/Logic Unit 11:39:50 It's what does the arithmetic and logical operations in a computer. 11:41:24 ah 11:41:54 I suppose in more modern terms, it'd be called the "Integer Execution Unit" or IXU now-a-days. 11:42:01 Especially with superscalar processor designs. 11:42:35 YAY! I found an 80A fuse for my car. Now I need a ride to the place to pick it up. :/ 11:42:41 kc5tja: is it similar to sbnz a, b, c 11:43:11 It's actually simpler than that, but yes, the concept is the same. 11:43:19 urls ? 11:43:32 See, now here's a case where simpler isn't always better: the sbnz-processor is a more "useful" processor, because it does more per cycle than a MOVE. 11:43:43 Google will have them. Look for "transport triggered architecture" 11:44:30 ah okay. 11:44:47 kc5tja: it is super super risc :) 11:44:59 Yeah. : 11:45:01 :) even 11:45:08 --- quit: I440r (No route to host) 11:45:35 I'd even go so far as to say it's "IC" -- Instruction Computer. There is no instruction set, and there's nothing left to reduce. :D 11:46:23 The interesting thing about these architectures is that these have the largest potential for moving into non-Von-neumann architectures. 11:46:37 Even the Harvard Architecture is Von Neumann. 11:47:02 Opens up a lot of possibilities for functional programming systems like ML and Haskell. 11:51:33 how popular are they? 11:51:37 --- join: mark4__ (~mark4@1Cust225.tnt1.bloomington.in.da.uu.net) joined #forth 11:53:02 grrr i think my isp or the fone company needs thwapping with a clue bat 11:53:07 --- nick: mark4__ -> I440r 11:53:10 not sure which one 11:53:54 gilbertdeb: MOVEs? Not very at the moment. I don't think many people are paying much attention to them. 11:54:01 are you? 11:54:04 gilbertdeb: Part of the problem is that their instruction sizes are gargantuan. 11:55:21 gilbertdeb: I check their progress periodically. I've often entertained the thought of building my own TTA processor. But they are unweildly at narrow instruction widths. 11:59:08 However, their simplicity is almost compelling. 12:00:24 --- quit: mark4_ (Read error: 113 (No route to host)) 12:00:54 simple devices are good components won't you say? 12:01:43 That depends on their application. For just plain homebrewing stuff, I'd probably have fun building and programming a TTA. 12:01:52 But I'd probably have more fun building and programming a stack CPU. 12:05:38 simple systems are good for solving simple problems. complex systems arent good for anything 12:05:43 :) 12:05:56 I believe we are at a stage where with relatively cheap chips, one can build a reasonably fast machine. 12:06:13 moore's law works for old machines too :D 12:07:12 hahah. 12:07:24 I440r: complex things are good for the marketing geeks :) 12:07:30 they have more material to work with you see? 12:08:07 :) 12:08:54 This is all good and fine, as long as you recognize that there does exist minimum complexities for certain things. 12:09:16 However, we are at a stage now that we can make old computers blindingly fast. 12:09:23 kc5tja: my point exactly. 12:09:42 I have a 200mhz usparc solaris here, and for normal use, I don't think it is that slow. 12:09:55 the needforspeed arises when I need to compile huuuuge things. 12:09:56 For example, Western Design Center sells 65816 chips that can go up to around 20MHz or so reasonably reliably. But if that isn't fast enough for you, you can license their IP technology and make a 65816 chip that goes up to 1GHz easily. 12:10:02 * kc5tja can't fathom a Commodore 64 running at 1GHz. :) 12:10:03 but that happens on a relatively infrequent basis. 12:10:42 Even then, the speed of compilation is usually I/O bound, not processor bound. 12:10:42 well, It's time to pack up my computer 12:10:58 Processor speed is nice and all, but I/O is really where it's all at. 12:11:07 I've gotta hand over my keys to this place in two hours. 12:11:09 I'd rather have a 500MHz CPU with a 500MHz bus than a 1GHz CPU with a 233MHz bus. 12:11:09 the bottleneck of it all. 12:11:30 kc5tja: what do most pcs have? 12:11:32 133mhz? 12:11:38 133MHz still. 12:11:46 but I should be online again in about 24 hours in my new place. 12:11:49 Those with AMD Athlons and the *latest* Pentium processors have 233MHz buses. 12:11:55 Herkamire: Moving? 12:12:00 kc5tja: yeah :) 12:12:06 Herkamire: Good luck. :) 12:12:06 just about done moving :) :) 12:12:26 * kc5tja is rained in here. :( 12:12:48 oh, it's beautiful here. most times when I moved stuff it was raining a little. 12:12:53 My car needs a new 80A fuse for the battery, and it's raining so I can't ride my bike anywhere. 12:13:32 if I have time I'm going to patch up my muffler. I've been waiting for a nice day where I didn't have to be at work. 12:13:53 Well, I tried replacing my car's power antenna yesterday, and that was a major mistake. :D 12:13:56 anyway, time for me to get this computer in a box 12:14:00 Problem after problem after problem came up. 12:14:06 heh 12:14:13 Ultimately ending in me blowing the main fuse. :D 12:14:14 hmm I think my i2 has 266... 12:14:20 not bad for a 195mhz processor :D 12:14:22 --- quit: Herkamire ("moving!") 12:14:40 and both chip/bus are 64bit 12:14:43 gilbertdeb: A 266MHz bus? The bus can't run any faster than the bus master on it. 12:14:53 it says thats the peak. 12:14:55 Maybe the RAM is that fast, but not necessarily the bus? 12:15:03 Oh, 266MB/s -- that's different. 12:15:07 I'm talking MHz. 12:15:17 Even PCI is 133MB/s at 33MHz. 12:15:39 So it sounds like you have a 66MHz bus. 12:15:49 66 vs 195. 12:15:54 and 512mb ram 12:15:58 * kc5tja nods 12:16:23 I say its plenty fast for learning MIPs asm on :) whadya think? 12:16:50 If I had such a box, I'd take it. I'd do more than just learn MIPS on it though. I'd hack a Forth system on that puppy and let it loose. :) 12:17:00 thats my intended goal. 12:17:13 That is a good goal. :) 12:17:21 I got it for 99$ (buy it now price) from ebay. 12:17:29 * kc5tja has a 33MHz 80486 laptop that I'm currently trying to put a Forth system on. 12:17:37 WOW! That's dirt cheap for a Sparc! Nice buy 12:17:45 no its not a sparc. its an i2 ! 12:17:51 err, sorry, SGI. 12:17:54 MIPS r10k 12:18:20 AND, I have the scrollable icons gui thing going. 12:18:29 thats the best part of it all for me :D 12:18:37 Right now, I'm working on FS/Forth in DOS, because it is more convenient, and because I need a sense of "closure" from my previous DOS-based Forths. 12:18:46 But after that, it'll be ported to the 32-bit environment. 12:18:56 scrollable icons? 12:19:00 Please explain 12:19:02 yeah, the size. 12:19:16 I'm not familiar with the phrase "scrollable icons." 12:19:26 it is my phrase. 12:19:28 You mean an oversized desktop? 12:19:39 where you scroll by moving the mouse pointer to the edge of the screen? 12:19:47 imagine a window full of icons whose size can be increased on the fly. 12:20:18 controlled by the mouse by hitting +/- 12:20:24 So it's a ZUI -- zooming user interface. 12:20:29 YEP!!! 12:20:37 Jef Raskin's THE ideally is a ZUI, which is exactly what I'm aiming for. 12:20:39 thats the best term I've heard for it. 12:20:49 However, I don't have icons -- I have actual documents. In fact, in THE, there is no such thing as a "window". :) 12:20:51 * gilbertdeb writes down ZUI 12:21:15 Jef prefers the term "ZIP" -- Zooming Interface Paradigm. But I like the "ring" of ZUI better. :D 12:21:35 the machine came w/o roots password. 12:21:49 it took me a heck of a long time to finally erase that puppy . 12:21:49 Do you like the ZUI better than a traditional windowed interface? 12:21:55 I love the zui. 12:21:58 Hmm... 12:22:02 so you had to hack root on it, eh? :D 12:22:09 >UI`? 12:22:10 more or less. 12:22:18 what is zooming interface? 12:22:30 I had to mount the scsi harddisk on linux and do it from here. 12:22:46 mur: I recommend reading the book, "The Humane Interface" by Jef Raskin. Although the concept of a ZUI isn't his invention, he does offer a nice and approachable explanation for what it is. 12:22:51 but thats a freaking long story. there is 'goodness and kindness of strangers' moral in the story. 12:22:54 mur: Failing that, let me google for some links you can read... 12:23:46 mur: Try this. This looks reasonably interesting. http://www.cs.umd.edu/hcil/pad++ 12:24:13 kc5tja: just for the heck of it I think you should take a look at rebol. 12:24:24 Ahh, gotcha. Yeah, I understand that the sole purpose of ntfs under Linux is support hacking the registry on an NT volume, and that's it. :) 12:24:24 it is inspired by forth remember? :) 12:24:41 for the irix I had to use xfs. 12:24:47 gilbertdeb: Actually, it's inspired not only by Forth, but by Lisp as well. It's a LOT more like Lisp than it is Forth. 12:24:59 but it uses words like forth does. 12:25:00 * kc5tja has used Rebol many times in the past. 12:25:10 didnt lisp inspire forth anyway ? 12:25:12 gilbertdeb: It's still more like Lisp. 12:25:13 originally i mean 12:25:28 so you were playing dumb when you said 'what does view mean' :O 12:25:36 I440r: In the, "This is too damn complicated! I must re-invent my own solution!" sort of way that Chuck is well known for. :D 12:25:39 I440r: according to CM yes. 12:25:50 kc5tja: laziness. 12:26:04 great virtue, domain of all deep thinkers. 12:26:10 ;) 12:26:12 Actually, that's not strictly true. Forth is really an independent creation from Lisp, BUT, Lisp did influence the evolution of Forth once Forth could compile itself. Chuck was the student of Lisp's author (I forgot his name) 12:26:23 mccarthy 12:26:28 Thanks 12:26:32 I have a link for his lisp1.5 programmers manual. 12:26:38 it was small, minimal, etc. 12:26:40 tiny... 12:26:54 gilbertdeb: No. I have no real experience using Rebol/View; I only reviewed sample sources. 12:27:23 I am intrigued by it. 12:27:34 I vastly prefer it to smalltalk . 12:27:48 Well, you're also already familiar with the Unix-style interaction too. 12:28:02 Smalltalkers will abhore Rebol, and prefer their own visual construction style. 12:28:04 I am spoiled. what can I say ? 12:28:10 So are they. 12:28:30 the day I properly comprehend smalltalk, I'll also go to heaven. 12:28:56 gilbertdeb i have not yet read it but is it that you have rectangles ("windows") that you can resize smaller and larger ? 12:29:12 mur yyes. icons. 12:29:14 Smalltalk really isn't hard to comprehend. But like learning a language, learning to read and write a language is totally different from speaking it. In order to *really* know Smalltalk, you also have to code in it. 12:29:36 it has a thumb scroll on the side on the side of the window you can 'scroll' for zooming purposes. 12:30:05 infact, the irix gui thing is as 'simple' as twm... 12:30:08 gilbertdeb icons? 12:30:21 yes little pictures representing folders, files, etc. 12:30:25 they are stamp sized. 12:30:34 as in 'click on the my computer icon'. 12:30:36 all information on desktop? 12:30:46 in various windows yes. 12:30:50 then they woudl resize larger? 12:30:55 you can yes. 12:30:55 I don't consider twm very simple for one very good reason: it doesn't expose the window's interface to the user. The user must work hard to explore the environment before (s)he becomes familiar with it. 12:31:01 And, moreover, it's bloody butt ugly. 12:31:14 kc5tja: I hid that from you. you weren't supposed to read it. 12:31:36 alright, spartan is the word I am looking for. 12:31:43 gilbertdeb so all information in accessible from zoomable rectangles that contain icons for information and you can click and data open ? 12:31:59 mur yes. just as on the mac, or in kde, or in ms windows. 12:32:07 it is all based on motif. 12:32:24 those are GUI's 12:32:32 * gilbertdeb nods. 12:32:37 * gilbertdeb is refering to none other. 12:32:45 the icons in the windows are zoomable. 12:32:57 um? 12:33:11 the icons in ms windows are zoomable as well. 12:33:27 but to do that, you have to edit a number in the registry. 12:33:36 mur: its nothing special, I just think it is :D 12:33:56 kc5tja: 'simple' is a very deceptive term wouldn't you say? 12:34:11 A ZUI is more "in-depth" (no pun intended) than most GUIs though. 12:34:15 gilbertdeb you can do it on desktop 12:34:34 You generally don't click an icon to view its data; you just zoom *into* it. That is, an object's "icon" is just a miniature version of itself. 12:35:07 gilbertdeb: I've already established that before. This is why you must qualify what is simple. :) 12:35:35 kc5tja: have you ever looked at the etymology of the word? 12:36:25 I cannot say that I have. 12:36:40 from Latin simplus, simplex, literally, single; Latin simplus from sem-, sim- one + -plus multiplied by; Latin simplic-, simplex from sem-, sim- + -plic-, -plex -fold -- 12:37:09 --- join: mark4_ (~mark4@1Cust146.tnt3.bloomington.in.da.uu.net) joined #forth 12:37:11 That makes sense. 12:37:32 So its history vindicates my personal meaning of simplicity. 12:37:36 hehehe 12:38:19 I have never looked up the word. I really shouldn't take such common things for granted. 12:38:26 s/have/had 12:38:35 GGRRRRRRR! 12:38:43 there shoudl be 3 documents of GUIS 12:38:55 one for engineers who dont care the users 12:39:02 but how it is done and how it works 12:39:17 one for humanists who think of how the langauge and communication work 12:39:19 kc5tja: do you like X? 12:39:28 gilbertdeb: As in X11? 12:39:29 and one for graphicians who do outlook and behaviour 12:39:31 yes . 12:39:45 gilbertdeb: Yes and no. I have a love/hate relationship with it. 12:40:40 I have to admit that Win32's GUI architecture is actually simpler than X11's. 12:40:48 And every bit as powerful. 12:40:57 It has always been 'simpler'. 12:41:02 what about the macos gui? 12:41:14 I don't know much about the innards of the MacOS GUI. 12:41:18 or the altos gui which I believe was just plain old smalltalk. 12:41:21 tgunr might be a better source of information on that. 12:41:29 * kc5tja nods 12:41:35 I am familiar with Intuition and with GEM though. 12:41:47 Intuition is my all-time favorite GUI environment. 12:41:52 ONE function call to open a window. 12:42:28 A gadget list and drawing list that reminds me of a very primitive scene graph, etc. 12:42:33 It's all very goal-oriented. 12:42:45 what does intuition run on? 12:42:52 AmigaOS 12:43:02 Sassenrath anyone? 12:43:03 :) 12:43:11 j/k 12:43:14 Sassenrath had nothing to do with Intuition. 12:43:19 This was RJ Mical's work. 12:43:22 re: j/k 12:43:57 can X be made simpler? 12:44:06 and then still allow for remote x sessions? 12:44:11 I think so, yes. 12:44:17 eg, I have no monitor for my sgi . 12:44:18 The guts of Xlib are fine. 12:44:19 * gilbertdeb hangs his head. 12:44:31 It's the window management and widget management methods they use that really complicate the (@#*(@*# out of X11. :) 12:44:37 But, with the remote X session, I have as much of it as I can have. 12:45:03 is xlib plain c? 12:45:08 Yes 12:45:15 no oops? 12:45:27 This is why some parts of THE/X11 is written in C, to provide a binding from C to Forth. 12:46:04 can it remain simple and still allow for remote x? 12:46:09 Yes 12:46:12 wait scratch that. vnc is proof enough. 12:46:42 Berlin uses CORBA as its remote infrastructure, and nothing in CORBA is related to GUIs at all. 12:46:43 --- quit: sifbot (Read error: 110 (Connection timed out)) 12:47:18 --- join: bwb (~bwb@ip68-4-121-108.oc.oc.cox.net) joined #forth 12:47:22 re bwb 12:47:24 hey 12:47:42 did you read paul graham's "100 year language" article? 12:47:43 is Corba complimacated? 12:48:43 --- nick: mark4_ -> I440r_ 12:48:45 why do people knock cobol so much? 12:48:59 gilbertdeb: Yes and no. It's complex because it's doing a very complex job. But compared to its immediate competitors, it's dreadfully simple to use. The 1000-page book that describes it is mostly reference; only the first three chapters of the book should really be read by CORBA programmers. 12:49:00 I hate the language :) but I hear it does what it does very well. 12:49:34 COBOL is horrible because it's unstructured, and requires really weird text formatting requirements, etc. 12:50:01 kc5tja: I think it does a lot of what spreadsheets do now. 12:50:15 Plus it uses virtually the entire English vocabulary as reserved words. I had a Dr. Dobbs journal article that I since lost, but gave examples of how you had to "munge" variable names to prevent them from clashing with reserved words. 12:50:27 so did most assemblers back then, which is why everone codes assembler like 12:50:38 mov eax, 5 12:50:40 today 12:50:51 bleh 12:51:01 what do you mean I440r? 12:51:18 For assembly, I think it still makes sense. 12:51:21 moveax,5 12:51:36 moveax,5 12:51:39 instead of that 12:51:56 everyone tabs all the mneumonics into one column, all the operands into the next etc 12:51:57 BTW, assembler's are space sensitive only in the first column; the remainder of the line is free-form. 12:52:07 because the early assemblers required that formatting 12:52:11 I440r so you think it should be done in a spreadsheet? 12:52:22 kc5 yes - thats the way most modern assemblers work 12:52:35 if it starts in the first column its a label otherwise its an instruction 12:52:35 Only to distinguish a label from an instruction, but even the earliest assemblers were freeform ONCE you got past column 1. :) 12:52:44 * kc5tja nods 12:52:57 kc5 not all of them 12:52:58 The big reason people put things into columns is because it's very easy to read that way. 12:53:11 kc5 actually i disagree that it makes it easier 12:53:17 tabulation... 12:53:21 hence 'tab'. 12:53:37 you cant scan it easilly. mov eax, 5 12:53:45 instead of mov eax,5 12:53:53 there is no pause. 12:53:59 bzzt...sorry. Not true. 12:53:59 each mov is followed by something else. 12:54:06 Experience and studies show the reverse is true. 12:54:32 there is if your eye keeps having to scan left and right. which is why papers keep their coumns small (width wize) 12:54:36 Well-tabulated data is often times substantially easier to scan outright. 12:54:51 its easier for the eye to see more vertically than it is for it to see more horizontally 12:55:09 I440r like japanese and chinese kanji text? 12:55:10 --- quit: I440r (Read error: 113 (No route to host)) 12:55:11 the chinese way of writing is actually better 12:55:18 gilbertdeb: yes 12:55:29 s/text/ideograms 12:55:56 so would you rather have ... 12:55:57 mov 12:55:58 The only problem with Chinese/Japanese characters is they're random. 12:55:58 eax 12:55:59 5 12:56:04 I like Korean's text system better. 12:56:09 Nice and regular. 12:56:59 I440r_: it just occured to me that you could have it your way. each instruction would be represented by an icon with the registers,operands,whatever written on. 12:57:05 hmm 12:57:06 I'll be taking Japanese in college to fulfill my language requirement. 12:57:10 quick consult 12:57:14 do you know c# 12:57:15 ? 12:57:17 [mov ] 12:57:19 Nope. 12:57:21 the microsoft langauge 12:57:22 [eax 5] 12:58:00 and then have all the icons vertically arranged. 12:58:06 ideogrammatic asm 12:58:11 gilbertdeb: heh 12:58:36 I440r_: that way, you see an icon and you don't even have to think about it. you simply 'read' it as mov, or 'jmp' or whatever. 12:58:42 i just dont want huge blobs of white space injected whjere it does no good. white space helps prevent CRAMMED sources but extra white space is just as bad 12:59:07 bah. I love python for its insistences . 12:59:10 gilbert yea - that would only work if oneremembered all the symbols 12:59:18 I440r_: it doesn't take long. 12:59:34 even pre kindergarteners are exposed to pix first!!! 12:59:35 :) 12:59:37 well. everyone else would have to learn it too hhe 12:59:46 they might resist/rebel against the idea 13:00:01 yes - symbols are easier than 'words' 13:00:03 sure. but thats because they love resisting/rebelling. 13:00:12 which is why all road signs are icons :) 13:00:18 or... most of them are heh 13:00:23 * kc5tja would kill to convert this nation over to a phonetic alphabet, even if it were ideographic. 13:00:33 kc5tja: why is that? 13:00:35 The dictionary vendors would be put out of business. 13:00:48 lol! 13:00:53 hasn't the english language suffered enough in 900 + years? 13:00:59 kc5tja: we'd have to drastically reduce the number of sylables.. 13:01:16 Because I'm sick and tired of having to decide consciously whether I want to use where, wear, weyr, lie, lye, lai, which, witch, etc. 13:01:22 bwb: the kalahari bushmen have that 'click' sound. 13:01:28 its not yet incorporated in english :D 13:01:50 It never will make it. 13:01:54 But even so, English is rancid. 13:02:03 Are you aware that English is the #2 hardest language to learn in the world? 13:02:04 yes - thats a very difficult language to learn. i hear its even more difficult than english 13:02:08 kc5tja: english is a whore. its had so many fathers!!! 13:02:09 Even *GERMAN* is easier to learn than English. 13:02:25 kc5tja: no, english is simple. 13:02:30 easy to get started in. 13:02:34 hard to get far in though. 13:02:37 kc5 whats #1 ? 13:02:50 sanskrit? 13:02:52 Chinese. 13:03:16 the chinese have a hard time with english! 13:03:19 But not because of the spoken language; because of the written language. 13:03:25 yes. 13:03:37 English is one of the few languages on this planet that has an indefinite article. 13:03:47 'a','an'. 13:03:48 It takes the average Asian person about 12 years to master "a" and "an". 13:03:58 it allows for easy obfuscation and lying comes quickly. 13:04:28 Sprechst du Deutsch? 13:04:35 'a man'. unassigned variable. 'the man' assigned variable. 13:04:38 problem solved. 13:04:41 bwb: Nie 13:04:44 bwb poquito 13:04:47 Deutsch ist toll. 13:05:18 I think my all-time favorite language to date is Esperanto. 13:05:36 I learned it in a period of about six months well enough to regularly participate in soc.org.esperanto newsgroup. 13:05:41 have you heard/spoken any african languages? 13:05:47 I hear they have more languages than anyone else. 13:05:55 per capita. 13:05:56 mi estas ne bonan se esporanto 13:07:06 fridge: I've forgotten how to respond, but "Neither am I." :) It's been too long since I read/written it. 13:07:35 * kc5tja would like a book on Esperanto, so I can have a permanent copy of the language reference handy. 13:07:52 Plus I can use it in my D&D games, and really freak people out when encountering truely alien races. 13:08:08 I just like it for its consistency 13:08:29 bwb: about the paul graham article. 13:08:32 worse is always better. 13:08:43 gilbertdeb: ja? 13:08:49 worse? 13:08:52 fridge: Me too. Absolutely wonderful language. 13:08:54 * gilbertdeb nods. 13:09:13 bwb: a worse language now is better than an ideal language 2000 years from now. 13:09:14 gilbertdeb: what do you mrean worse? 13:09:23 howso? 13:09:49 bwb: when it comes to be, it would be good. 13:09:59 before then, it is as good as an english speaking elephant. 13:10:07 When I have children, I intend on teaching them Esperanto FIRST, English either concurrently or later. 13:10:21 why esperanto 13:10:28 heh 13:10:46 Because the language is so regular that children pick it up *really* fast. 13:11:27 How many times have you heard children try to say "foots" instead of "feet"? Esperanto has no irregular verbs; the plural of foot is, in fact, foots. (well, you get the idea.) 13:11:47 kc5tja: give children the credit they deserve. 13:11:59 they can master the complexity far more easily than you or I can. 13:12:24 and they can learn many more languages at once. all they have to do is play with kids who speak such a language. 13:12:56 I am giving children the credit they deserve. 13:13:02 just immerse them. 13:13:11 But, why should a child ever have to spend another year learning irregular verbs when they can move on to something else more important? 13:13:14 * bwb wishes rain would go away right now 13:13:17 eg, forget the k-12 bs. they can learn all that in 3 years or so. 13:13:26 Wanna go to REI :/ 13:13:30 in between, you can immerse them anywhere. 13:13:38 I firmly believe that we should be teaching our children at least Calculus in upper elementary school, in conjunction with arithmetic basics. 13:13:54 bwb: It's raining for you too? Yeah, it's pouring here. 13:14:15 kc5tja: I firmly believe that a public education is designed to accomodate the lowest common denominator. 13:14:24 Absolutely. 13:14:27 I'll tell you what... 13:14:27 and even then, they still don't get it AFTER college. 13:14:30 kc5tja: yeah.. I thought it was going to let up for a bit (weather map showed it).. but now it looks like it coalesced and so there are no holes :/ 13:14:33 16 freaking years man! 13:14:45 after signing up for aikido, the "dojo" style learning environment has been bar none the single best environment I have. 13:14:45 bwb: you rely on TV weather? :) 13:15:00 You pay $X a month for a regular education in a particular field. 13:15:01 gilbertdeb: weather.com doppler radar maps :) 13:15:20 (in the case of aikido, it's a martial art. But it doesn't have to be martial art; why can't it also be Physics, Chemistry, or Algebra?) 13:15:35 kc5tja: I hate school, and I love school. 13:15:45 it is a block of time during which I can learn whateve rI please ! 13:15:47 You get relatively personalized attention, and there's no tests except for what tests were originally design to do: test comprehension. 13:16:08 gilbertdeb i love school 13:16:16 gilbertdeb i want to learn always somethign new 13:16:33 mur: then they should help you learn how to teach yourself. 13:16:35 end of story! 13:16:51 kc5tja: there are a few schools like that. 13:16:58 gilbertdeb heh. i do learn myself much. 13:17:03 reed, st johns, new college of florida... etc. 13:17:09 * bwb homeschooled 13:17:17 \o/ 13:17:30 * kc5tja wishes he was homeschooled. 13:17:34 kc5tja: me too. 13:17:39 * kc5tja has been hurt and hindered by the public education system. 13:17:48 heh 13:17:52 I remember teaching myself calc 1 and thoroughly enjoying the process! 13:18:13 * mur wants to become researcher 13:18:21 ein forscher? 13:18:21 One other reason to teach kids Esperanto in addition to their native tongue: they know two languages automatically, "out of the box." This REALLY helps them learn third and more languages. 13:18:32 it takes a lot self-discipline.. like not being on IRC when yer suppose to be studying for SAT II: Math IIC :/ 13:18:45 kc5tja: you could also just raise them in a multi-lingual environment... 13:18:58 bwb create #SAT_math :) 13:19:02 bwb: yes it is one of the most important things to master. 13:19:10 irc education joint crusade for grades 13:19:10 :) 13:19:16 gilbertdeb: There's evidence that suggests Esperanto is beneficial in those environments as well; the children pick up "natural" languages faster when they know Esperanto. 13:19:20 kc5tja: thats true.. learning two languages really does help you understand each 13:19:21 * mur never liked mathematics 13:19:29 kc5tja: is it 'simple'. 13:19:59 Yes, it is. But from simplicity comes complexity; Esperanto can express everything a natural language can express. This is why it's the only contrived language to have survived for so long. 13:20:44 esperanto is indo-european language 13:21:02 perhaps survived because of that and becuase it has certain statue 13:21:04 status 13:21:08 (little typo) 13:21:10 :) 13:21:16 mur: I like it but I'm rusty at algebra/geometry/trg/etc :/ need it for adminsion to caltech/mit/stanford/harvey-mudd or wherever 13:21:46 move to finland and apply helsinki university :) it's 5th best in europe :) 13:22:06 Nope. 13:22:14 Ido is also Indo-european, and has failed miserably. 13:22:39 kc5tja ido is unknown, but very many know esperanto 13:22:48 mur: There's a reason for that. 13:22:49 it is the status 13:22:54 Status of what? 13:23:01 it's such known 13:23:03 Ido was very widely popularized back when it was created. 13:23:24 Zammenhoff(sp?) himself contributed some things to the language. 13:23:24 esperanto is known elsewhere than europe too 13:23:31 Yet Ido failed, and Esperanto prospered. 13:23:51 So is Ido. 13:23:57 How do you think I heard of it? 13:24:33 kc5tja have you seen this? http://home.pipeline.com/~hbaker1/letters/CACM-RelationalDatabases.html 13:25:33 It made me rethink the whole 'that technology is obsolete' thing. 13:28:25 kc5tja i dont know 13:28:27 i have not heard of it 13:30:07 gilbertdeb: No, but I agree wholeheartedly. 13:31:10 he has an article on forth in there too. 13:31:14 he had ^ praise. 13:31:35 * kc5tja nods 13:31:44 Henry Baker is a smart cookie. He's one of my heroes. 13:32:07 ah you know of him. 13:32:44 Yes, he has many good articles on things like linear memory management, functional language implementation, etc. 13:45:21 later 13:45:23 --- part: bwb left #forth 13:57:09 DAMN THIS EVIL RAIN!! I want to go out, but I can't because of it! >>:( 13:58:24 why not? 13:58:32 go out to woods or to city? 14:02:00 City. 14:02:10 hmm 14:02:15 that is different 14:02:20 you still coudl 14:02:22 But my car isn't running right now, and I can't bike in the rain without catching pneumonia for the fouth time (!!) this year. 14:02:32 pneumonia? 14:02:39 cold reflects? 14:02:42 or wet air? 14:02:50 moist air 14:02:57 I have a propensity of catching pneumonia for some reason. 14:03:08 I can't explain why. :( 14:03:12 --- join: thin (~thin@198.162.22.61) joined #forth 14:03:17 kc5tja: stay away from Asia right now :-) 14:03:34 that would be a good plan :/ 14:03:42 thin! 14:03:47 hey 14:03:50 --- nick: I440r_ -> I440r 14:03:50 i'm here for 5 minutes :D 14:04:09 TreyB: No kidding. I listen to Radio Taipei International every night, and they're hit hard. I really feel sorry for them... :( 14:05:51 kc5 is that in english ? 14:06:14 radio amateur siganL? 14:06:26 thin enjoy maximum! :) 14:06:45 I440r: It is from 12AM to 1AM. Before that, it's in spanish, and before that, in Chinese. 14:07:31 k :) 14:08:14 Pacific time, I should say. 14:08:34 We're GMT-8h, so it'd be 0800 to 0900Z. 14:08:40 5950kHz 14:08:41 AM 14:09:00 mount /dev/cdrw 14:09:07 argh damn wrong windows :P 14:10:17 :) 14:13:01 --- quit: thin ("laters") 14:28:06 kc5tja: do you run your ham stuff from linux ever? 14:34:00 I used to, but I don't anymore. I just haven't been active on ham radio that much recently. 14:34:27 Funny you should ask, though; I just turned on the rig to a 40m frequency, and I'm listening to a bunch of people talking. 14:34:32 That's how incredibly bored I am right now. 14:35:19 kc5 if your realy bored you could write the isforth assembler ;) 14:35:21 hehe 14:35:31 I'm too bored to think. 14:35:45 I still need to write the string comparison code for FS/Forth so it can interpret words. 14:35:56 yea. me too. thats why im compiling my kernel :/ 14:36:12 I440r: how many times so far. 14:36:22 not once yet - just starting 14:36:30 i mean my linux kernel. not my forth kernel "_ 14:36:38 yes I know. 14:36:53 which linux are you running? 14:37:29 2.4.19 but im compiling 2.4.20 14:37:53 if you were running debian, and you had knoppix, you could simply steal knoppix's kernel. 14:37:57 it is 2.4.20 :) 14:38:00 thats what I did! 14:39:26 no. im compiling it for my processor, not for a 386 14:39:40 and im getting rid of all that SHIT i never use and adding things i want that arent there 14:39:47 cant "stea;' one "_ 14:39:48 :) 14:39:58 mine was waiting to be stolen. 14:40:09 I needed xfs and it was getting painful patching the kernel. 14:40:21 and knoppix had xfs and scsi enabled! 14:46:01 --- quit: fridge ("http://lice.codehack.com") 14:56:45 What is that "_ you keep appending to your lines? 14:57:20 That's an interesting philosophy. 14:57:47 I really like systems where they give you the options, and you select what you WANT. But it seems Linux distros today force you to select what you DON'T want instead. 14:57:50 Most annoying. 14:58:01 Man, it's coming down hard here now... :( 14:58:09 i love rain 14:58:18 kc5tja: I s'pose they are trying to make it as user friendly as possible. 14:58:22 I do too, normally, but I had *stuff* I needed to do. 14:58:30 linux is not the organism linus was playing with in his youth. 14:58:41 Nope. 14:58:48 I kind of miss kernel version 1.3.18. 14:59:09 it has suddenly become a fight for the desktop... and all the silliness involved in that etc. 14:59:26 Yup. 14:59:38 That's why I'm going to start ignoring the desktop as soon as I can. 15:00:04 I'm even planning on building my own PC, using a thoroughly non-standard (and yet, standard at the same time!) microprocessor. 15:00:17 kc5tja: a risc machine? 15:00:22 I love my Athlon, but man, I hate having 8 fans running all at once. 15:00:32 No, actually. It's going to be based around the 65816 microprocessor. 15:00:52 thats a cisc. 15:00:58 what do you like about it? 15:01:14 Though it's a CISC, it's a snap to use in a homebrew circuit. 15:01:18 And it's damn fast for a CISC. 15:01:28 is it easy to come by? 15:01:41 I really don't know. 15:01:51 I ordered mine directly from Western Design Center (NOT Western Digital!). 15:02:00 I'll like to build something around the sparc sometime, since its still around. 15:02:09 the makers of the z80 was it? 15:02:16 or is that someone else? 15:06:47 Zilog 15:23:14 --- quit: I440r ("Reality Strikes Again") 15:25:24 --- join: MrReach (~mrreach@209.181.43.190) joined #forth 15:25:32 --- part: MrReach left #forth 15:38:15 brb -- taking a shower. 16:01:46 --- join: mark4 (~mark4@1Cust146.tnt3.bloomington.in.da.uu.net) joined #forth 16:02:42 --- nick: mark4 -> I440r 16:04:50 --- join: MrReach (~mrreach@209.181.43.190) joined #forth 16:05:12 Hi MrReach :) 16:05:19 hihi! 16:05:20 hi mrreach :) 16:05:23 how goes? 16:05:38 not too bad, still no job tho :/ 16:05:52 --- join: tcn (~r@tc1-login34.megatrondata.com) joined #forth 16:06:08 slowly, downloading the Win98 SDK update ... it's huge 16:06:12 Hey I440r, tcn 16:06:20 hihi, tcn 16:06:25 tcn!! 16:06:27 hey, you guys ever heard of the 'K' language? it reminds me of forth, in a way 16:06:32 k yes. 16:06:40 derived from a+ 16:06:44 its cousin is j 16:06:55 yeah, all the way back to APL 16:07:02 k is list based whereas j is still array based. 16:07:26 tiny tiny language... 16:07:31 with a superset of sql. 16:07:38 have you used it much? 16:07:45 TERVE Robert 16:07:56 oh i see.. i read something about how the guy was working on J but he got a better idea and ditched it :) 16:08:07 mur: TERVE 16:08:10 OOohh . 10 hours talking about Misc, Risc And Cisc :) 16:08:15 heh, how often does THAT happen 16:08:16 i just read about K the other day 16:08:50 4.9 Why are there both terminfo and termcap? Wouldn't one database be 16:08:51 tcn it is a tiny tiny language comlete with a gui builder and a full sql+ database in < 500k. 16:08:56 in this day and age! 16:08:57 enough? 16:08:57 You might want to read the Unix-Haters Handbook at 16:08:57 http://catalog.com/hopkins/unix-haters/handbook.html. It lists many 16:08:57 more reasons why Unix sucks. 16:09:21 I440r: what to use aside unix? 16:09:25 I mean, windows suuucks. 16:09:30 K could be nice for a lot of commercial work 16:09:31 unix has its problems 16:09:41 tcn: it is completely commercial and proprietary. 16:09:48 unfortunately 16:09:51 oh i know. I440r bsd . 16:10:04 tcn: the original c document is still free, and a+ is open source. 16:10:11 A+ read APLus 16:10:59 *nix still has the most solid task control and reliability 16:11:11 bsd still uses termcap, doesnt support terminfo. terminfo is braindead but its smarter than termcap by lightyears 16:11:20 mrreach you mean " 16:11:32 "after the amiga" 16:11:32 heh 16:11:44 can't get Amigas anymore 16:12:25 hey, when commodore dropped the amiga, how much did they sell the rights for? 16:13:06 I think k is nicer than j. 16:13:34 they claim j is simple, but you _have_ to know a bit about matrixes and their behavior 16:13:36 it wouldn't be hard to write something kinda like K 16:14:18 I learnt about k around the same time as I learnt about rebol. 16:14:21 maybe with a syntax more like C :) 16:14:28 nooooo. 16:14:42 if you like K how can you complain about C? 16:15:02 http://home.pipeline.com/~hbaker1/ForthStack.html 16:15:07 reddit 16:15:13 what did you think? 16:15:24 i forget 16:15:25 --- quit: tgunr (Read error: 104 (Connection reset by peer)) 16:15:33 it supports forth syntax and calls the fortran approach a tad retarded. 16:15:49 MrReach: Several millions. 16:16:12 hey! Amiga is back on the market!! 16:16:19 been some time 16:16:20 they are ??????????? 16:16:22 how ? 16:16:22 hasn't it been for a while? 16:16:24 They've been on the market, for a while. :) 16:16:34 * kc5tja used to work for them briefly. 16:16:35 ping ping ping ping ping. 16:16:45 www.amiga.com 16:16:46 ah did you meet sassenrath? 16:16:57 released amiga OS for pocket PCs too 16:16:58 They're not making new hardware, but they are still supporting AmigaOS and their Tao-based AmigaDE software. 16:17:04 No. 16:17:16 I was post-Commodore. 16:17:19 kc5tja: how again did you come by your chipawareness? 16:17:28 he might have been working for apple by then. 16:17:35 did you get an ee degree? 16:17:37 gilbertdeb: Getting my hands dirty and actually playing with them. :) 16:17:46 kc5tja: like the dojo! 16:17:47 No, I have no EE degree. 16:18:05 * kc5tja nods 16:18:32 * gilbertdeb rethinks school all over again. 16:18:57 erm ... I'm not sure my degree was worth it 16:19:07 what were you in for? 16:19:12 I've never really used it 16:19:14 * kc5tja is going for a Physics degree currently, not for money, but because I want one. :) 16:19:20 Electronics Engineering 16:19:23 gilbertdeb: Heh! Nice choice of words! 16:19:33 heheh 16:19:42 but the friends I made in college are invaluable in life 16:19:57 I'll be going to school for a while. 16:20:05 my next major will be philosophy. 16:20:10 --- part: tcn left #forth 16:20:10 would suggest _maybe_ doing the GEs 16:20:15 hopefully someone will pay me to be on the beach to think. 16:20:19 16:20:53 thinking involves a considerable amount of sitting around doing nothing :D 16:20:58 might as well do it on a resort. 16:21:18 brb 16:25:25 I440r: I've been thinking about a forth interface to OS signals ... but I can't seem to get away from some type of event loop 16:27:12 MrReach: If you don't mind, can you tell me your current plan? I might be able to give some ideas. 16:27:56 this is not an implementation ... just ruminations 16:28:11 the prob comes with asyncronous events 16:28:53 there is no way to prevent resource contention without an operational que of some type 16:29:03 Resource contention of what variety? 16:29:16 changing a variable, for example 16:29:23 Ahh 16:29:39 So you're assuming a fully synchronous Forth environment then, a la cooperative multitasking. 16:29:46 so I was thinking of GET-SIGNAL ( -- 0 | adr ) 16:30:06 or asyncronous ... same problems arise 16:30:30 Well, a fully synchronous Forth environment wouldn't have contention issues -- it'd be fully cooperative. 16:30:48 perhaps a better name would be @SIGNAL ( -- adr ) 16:30:52 I think maybe if you treated signals as if they were interrupts (conceptually), would that help? 16:31:13 that's what I was thinking to start with 16:31:30 oh, you're right 16:31:46 a truely synchronous system would have too much probs with it 16:31:53 would not rather 16:31:54 * kc5tja nods 16:32:13 but might still miss overlapping signals 16:34:42 brb hang on 16:38:13 mrreach signals is something ill be sorting out real soon, but looking at all the .h files its a NIGHTMARE heh 16:38:25 i wanna keep it simple. i gotta walk the doggies right nwo tho, brb 16:38:34 well, from C it's pretty simple 16:38:57 you basically define a procedure that is executed when a signal occurs 16:39:02 ok 16:39:22 then install the address of that procedure to the signal handler 16:39:22 I think what you need is a "thunk" layer -- a layer of software that enables a C program to invoke a Forth function. 16:39:51 I440r is writing in raw assembler 16:40:09 but the signal functions are available at the kernel interrupt level 16:40:26 so it's no biggie 16:40:50 --- join: fridge (meldrum@zipperii.zip.com.au) joined #forth 16:41:29 oddly enough, the loadlibrary functions are *NOT* available in the kernel ... totally lame IMO 16:41:56 you have to loadtime link the loadlib library in the exe file 16:42:17 Though it may be written in assembler, it's still talking to a system written in C. :) 16:42:46 Besides, it'd be generally useful thing to have, especially when talking to libraries like GTK and such. 16:43:12 ok, in the kernel, it doesnt look like C at all 16:43:15 not even close 16:43:26 Oooo...you're doing KERNEL development with isForth? 16:43:29 the libs, of course, expect a C type call frame 16:43:57 no, but isForth is a good way to think about system interfaces 16:49:59 presuming that on has a forth kernel loaded into memory ... 16:50:09 and a host operating system ... 16:50:29 some method of accessing host services must be provided 16:56:13 back 16:56:22 wb 16:56:36 doing signals in forth/assembler isnt trivial in linux 16:56:37 GN 16:56:44 for instance there are about 3 different syscalls to do it 16:56:55 and theres all sorts of optionable crap that you need to cater to 16:57:03 : goodnight sleep sleep sleep push 3 loop goodnight ; 16:57:05 oh? like what? 16:57:08 its not trivial 16:57:16 be well, mur 16:57:57 i forget exactly, was 2 weeks ago that i looked at it. take a look at the various syscalls and then take a look at the .h files - all the relavant info is scatterd amongts 23804560238765490284 different .h files in the include directory 16:58:05 --- quit: mur ("MURR!") 16:59:44 what was the syscall page again? 16:59:50 (why do I keep losing that? 17:01:59 man 2 syscall 17:02:03 merm no 17:02:06 man 2 signal 17:02:06 --- quit: deluxe_ ("bb") 17:02:10 man 2 sighandler ? 17:02:12 erm i forget 17:02:37 just figuring out the format of the structure to pass to sighandler is a nightmare, 17:02:43 for a start the damned thing is a union 17:02:55 * MrReach laughs 17:03:13 unions are *SO* easy in forth ... because there's no typing 17:03:19 i want a : sighandler ( n1 --- )........ ; 17:03:35 which will create a sighanlder for signal n1 17:03:42 sighandler will have to be parsing 17:03:58 or ' handler n sighandler or n ' handler sighandler or something 17:04:03 sighandler ( u xt1 -- xt2 ) 17:04:09 5 sighandler foo-signal 17:04:22 * MrReach nods 17:05:11 I had an alternate interface ... interested? 17:05:26 sure 17:05:45 first, there's enabling/disabling specific signals ... 17:05:52 right 17:06:26 signal-on ( n -- ) ... signal-off ( n -- ) ... signal-state ( n -- f ) 17:06:41 then, when a signal occurs ... 17:07:24 a structure is allocated that contains 1. the signal number 2. a timestamp and three a link in the signal que 17:08:10 then, in the main program loop, use @SIGNAL ( -- adr | 0 ) 17:08:33 the main loops is then responsible for FREEing the structure (or not) 17:10:04 so you have to POLL to see if the signal occured 17:10:25 no good in a system where the signal is telling you thers data on the port for ya " 17:10:30 one should *ALWAYS* poll for signals 17:10:37 because of resource contention 17:11:24 doesnt that sort of make them non interrupts ? 17:11:36 your basically not enabling any signals but want to know if they occured or not 17:11:50 not neccessarily, because there might be a thread dedicated to handling interrupts 17:12:48 right, the handler would be universal for all signals, and only leaves info to handle the interrupt in a known environment 17:13:30 read some of the essays about what a PITA handling signals is in C 17:13:40 it turns into a REAL nightmare 17:13:54 ok, i was thinking of doing THAT - but if threads A and B both want to know of a sigwinch and proces A frees up the structure..... 17:14:33 a better way would be to allocate structures for each signal that included a time when the signal occured 17:14:46 the structure remains intact until the next signal of that type 17:14:55 then ThreadA must send a signal to ThreadB to say as such ... and ThreadA needn't free the structure immediately 17:15:09 DUH! that's what I said 17:15:10 then A needs to know B needs the signal 17:15:14 were tying a gordian knot 17:15:24 go back and read 17:15:54 then, when a signal occurs ... 17:15:54 a structure is allocated that contains 1. the signal number 2. a timestamp and three a link in the signal que 17:16:04 right 17:16:14 but.... that structure is a one time use item 17:16:21 sorry, bit cranky today 17:16:27 why is it? 17:16:28 my way was that it was reused heh 17:16:35 a new signal generates a new structure 17:16:41 why ? 17:16:50 why not just have a buffer for each signal type 17:16:58 when the signal occurs the handler fills in the data 17:17:02 the consumer of the signal should be able to keep that tructure around indefinately 17:17:05 then ANYONE can say 5 signal@ ? 17:17:15 or what ever and know if/when the signal occured 17:17:23 right 17:17:29 erm ... I think 17:17:32 then if i need to keep it i should copy it 17:17:57 it's up to the appication programmer to designate a thread to handle signals, possibly passing tasks to other threads 17:18:00 which means that while im copying it i should lock that resource till ive finished copying it 17:18:13 no, no need to lock 17:18:27 @SIGNAL removes it from the chain 17:18:41 the thread then OWNS that data structure 17:19:04 in fact ... 17:19:23 never mind 17:19:38 the handler needs to allocate the structure, @SIGNAL can't do it 17:20:33 anyway ... it's only an alternative interface to the way the linux kernel does it 17:20:39 --- join: ramnull (~nicad@12-241-145-39.client.attbi.com) joined #forth 17:20:39 thats complecates it tho 17:20:45 the idea being to make it a bit safer 17:20:55 because if i signal@ and remove it i then have to know who else to pass it to 17:20:58 complicates what? 17:21:04 ah! yes 17:21:09 if my fetching it was non destructive anyone could read it 17:21:11 I440r: Done laughing at my source code yet? ;-> 17:21:18 ramnull i didnt get them 17:21:27 i checked mail a min ago, let me look again 17:21:35 Hmmm... 17:21:44 right, I knew you would care for the "event-loop" idea 17:21:55 wouldn't care, rather 17:21:57 i do like that 17:22:05 but i think it should be non destructive 17:22:29 well, then you're back to different threads handling signals 17:22:33 i use that technique in embedded apps all the time 17:22:48 the interrupt does NOTHINTG except set a flag stating that the interrupt occured 17:22:53 the inner loop then "handles" 17:22:55 yep 17:22:57 the interrupt 17:23:07 ramnull did the email bounce ? 17:24:32 signals probably need the timestamp, though 17:24:49 Tried it again. 17:25:10 Not getting any bounce messages. 17:26:33 mailcity can be slow sometimes :/ 17:26:43 Gotcha. 17:26:48 still not arrived tho. wanna try dcc thru my firewall ? 17:30:01 does mailcity have POP3 access??? 17:30:08 dunno 17:31:23 YIKES! Lycos wants $35/yr for domain registration 17:31:40 to hell with that :/ 17:32:08 Yeah, I can try dcc. 17:32:09 lol 17:32:14 not even hosting? 17:32:47 don't think so have moved on 17:33:20 wisely :P 17:33:33 I440r: if more than one thread can remove a single event from the que, then there is confusion about who is responsible for deleting it 17:34:12 you know ... it might not be a bad idea ... 17:34:13 nobody is 17:34:22 it stays there till the next signal of the same type 17:34:37 to have a specifier about WHICH signal you want to read/remove 17:34:46 nope! won't work 17:34:51 y not ? 17:34:58 if you don't get it fast enough, you lose it 17:35:09 correct 17:35:14 thats YOUR fault :/ 17:35:29 systems sometimes get bogged unexpectedly 17:36:03 usually badly designed ones heh - but i get your point 17:36:20 it seems ... 17:36:21 I440r: You getting my dcc? 17:36:23 could have a queue of the last 5 types of each signal 17:36:34 ramnull nope, cant see it :( 17:36:52 hang on 17:36:58 that an event que should exactly one source and exactly one consumer ... the consumer should be responsible for handing off to another thread if neccessary 17:37:30 --- join: I440r__ (~mark4@1Cust146.tnt3.bloomington.in.da.uu.net) joined #forth 17:37:32 dcc to here 17:38:59 I440r: Failed to bind. Why dont I cut and paste it up in a message? 17:39:13 sure - on the other guy :) 17:39:16 --- quit: I440r__ (Client Quit) 17:40:41 it seems ... that an event que should exactly one source and exactly one consumer ... the consumer should be responsible for handing off to another thread if neccessary 17:43:42 seems like an arbitary restriction to me but im definatly not an expert at this:) 17:48:39 in my mind ... 17:48:53 i presume a muti-tasking multi-threading system 17:49:18 but it seems that it would be the *ONLY* way to do it in a none-threaded system 17:59:38 --- join: Speuler (~Speuler@mnch-d9ba46cd.pool.mediaWays.net) joined #forth 18:00:19 moin 18:00:34 grias di 18:00:35 hihi, Speuler 18:01:04 brb, need to make coffee 18:01:13 before i die of caffine deficiency 18:01:26 now, that's a good idea 18:02:21 might have got a new forth project 18:03:41 didn't even look for one :) 18:05:24 --- join: ggraham (~ggraham@24-116-208-13.cpe.cableone.net) joined #forth 18:07:36 hrmmm ... Cyress Gardens just closed its doors 18:07:43 who? 18:07:48 a nature park in Florida 18:07:54 200 acres 18:08:10 closed permanantly ? 18:08:14 or --- for the night... 18:08:14 hjeh 18:08:21 permently 18:08:38 add some a's and n's in that word 18:08:47 heheh 18:09:04 paernmently :) 18:09:11 was one of the most beautiful gardens in the world, bar none 18:09:43 but they had 500 employees ... all kinds of sports events, etc 18:10:21 why did they close ? 18:10:58 their customers and revenue has steadily declined since 1995 18:11:41 seems they lost $6,000,000 in 8 years 18:11:49 that was silly of them 18:12:02 why is that? 18:12:30 I suspect the guy is tired of owning/running it, and would rather close it than downsize it 18:12:45 why not sell it 18:13:24 no offers 18:13:38 can't sell a business that is losing money 18:14:18 could sell it to disney :/ 18:14:45 but, as a simple bed and breakfast, it could be profitable so long as the property aquisition costs weren't outrageous 18:15:05 he'd rather die than sell out to disney 18:15:48 NPR interviewed the lead high-speed water skiier (83 years old) ... he was crying and blubbering 18:16:03 Back 18:16:15 Sorry; I was out working a little bit on my car. Replaced the 80A fuse, and the car runs again. 18:16:26 But I need to ditch the antenna i bought, and get a new Mazda factory antenna. 18:16:41 The universal I bought won't work with the radio setup. 18:19:33 http://story.news.yahoo.com/news?tmpl=story&u=/ap/20030411/ap_on_re_us/cypress_gardens_4 18:21:16 Well, that definitely sucks. I know how that feels. I felt the same way when I had to suggest closing down Armored Internet. :/ 18:21:40 opportunity for me, if I have the balls to do it 18:27:56 --- part: ggraham left #forth 18:28:30 JEEZ!!! 18:28:43 ? 18:28:45 What's up? 18:28:46 http://family-computing.com/cypress.htm 18:30:38 * kc5tja is listening to a bunch of old fogies on the ham radio right now, and they sound *exactly* like an episode of "King of the Hill". 18:30:43 Right down to the accent. 18:31:03 Oh man, this guy has a death wish!! 18:31:10 He's on the radio during a thunderstorm! 18:31:20 * kc5tja sighs 18:31:47 lol 18:36:52 My brain is getting mushy. bbl 18:37:01 --- quit: ramnull ("This isn't Happy Hour!") 18:37:33 Heh 18:38:14 Hmm...coded the first revision of the string comparison code, and it works 80% of the time. I know why it fails, but I'm trying to work on a solution now. 18:38:35 take care, folks 18:38:41 Later MrReach 18:38:46 --- part: MrReach left #forth 18:41:06 yea methinks its about that time. 18:41:11 nite folks. 18:41:19 nice to have seen you again kc5!! 18:41:20 73 I440r 18:41:29 :) 18:41:34 Likewise. 18:41:34 --- quit: I440r ("Reality Strikes Again") 18:41:35 :) 18:57:23 --- join: tgunr (~davec@vsat-148-63-143-139.c189.t7.mrt.starband.net) joined #forth 19:21:08 --- quit: tgunr (Excess Flood) 19:32:48 --- join: tgunr (~davec@vsat-148-63-143-139.c189.t7.mrt.starband.net) joined #forth 19:36:02 --- quit: kc5tja (sterling.freenode.net irc.freenode.net) 19:36:15 --- join: kc5tja (~kc5tja@ip68-8-206-137.sd.sd.cox.net) joined #forth 19:37:37 --- quit: kc5tja (sterling.freenode.net irc.freenode.net) 19:39:04 --- join: kc5tja (~kc5tja@ip68-8-206-137.sd.sd.cox.net) joined #forth 20:23:24 --- join: semtex (~Speuler@mnch-d9ba438c.pool.mediaWays.net) joined #forth 20:35:41 --- quit: Speuler (Read error: 110 (Connection timed out)) 20:43:03 semtex: do you know much about TTA's? 20:56:49 transfer - transfer architectures ? 20:57:35 --- nick: semtex -> Speuler 21:00:18 Uh oh ... I created a monster. :) 21:00:50 you called it "Gorgonzola" ? 21:02:04 i try to put john zorn audio tracks into categories ... 21:02:04 Speuler: ja 21:02:24 transport transfer methnks. 21:02:34 transport triggered 21:03:11 got "TouchOfHarmonicsABitDestructive" and "LessStructuredNoise" among "Avantgarde" and "Undecided" :) 21:03:16 hehehe 21:03:28 i like good jazz 21:03:35 difficult to categorize indeed 21:04:05 oh. there's "JazzyTraditional" and "JazzyFree" and "JazzyRock" too 21:04:10 ianni: which kind of good jazz? 21:04:21 "Destructive" and "FunnyDestructive" 21:04:45 even "SoftAnd/OrHarmonic" :) 21:05:08 but the "Undecided" directory gets longer ... 21:05:32 gilbertdeb: not much. some base understanding, i'd like to believe 21:06:10 dont listen to much stuff like zorn but people who i trust say it is good 21:06:15 the liveset was a little too noisy for me 21:06:20 :) 21:06:22 im into straight up good music. 21:06:53 good jazz. I'm thinking monk. 21:06:56 jazz i prefer classic jazz a lot... dave brubeck or modern jazz orchestra type stuff.. not been xposed to alot however 21:06:56 yea 21:07:00 monk 21:07:02 parker 21:07:08 parker is way to fast. 21:07:12 not a big knoweldgable person 21:07:13 miles davis is slow enough. 21:07:15 I like slower stuff yeah 21:07:27 i like swing and bigband too 21:07:33 if its jazzy/good 21:07:34 ah. that. 21:07:37 I don't dance. 21:07:38 :D 21:07:39 me either 21:07:42 :) 21:07:44 I play :) 21:07:50 oh. 21:07:51 much moer fun 21:07:52 neat. 21:08:05 I played in a jazz band or two when i was in school -fun fun shit 21:08:24 so was playing in an orchestra and playing vivaldi and beethoven 21:08:24 * Speuler likes noisy stuff 21:08:30 marching band was lame though 21:08:32 I played african drums in my school. 21:08:37 they made me dance and i quit. 21:08:38 though mine was cool 21:08:52 we were a 'black school'.. so we didnt do all those lame formations and twirls and crap 21:08:58 we had a huge drum section 21:09:07 that played thundering syncopated beats :) 21:09:09 too much harmonics are ... tiresome ... 21:09:19 or too straight a beat 21:09:26 Speuler: too much noise to me is tiresome.. too much harmonics is tiresome too - thats why I am picky picky picky 21:09:44 Speuler: so you don't like Schuberts lieder? 21:09:50 I dream about lieder! 21:09:55 all i care to hear is artistic precision.. technically while playing, in a group when its a live band, and compositionally 21:09:56 listened to J.Coltrane a bit 21:09:58 I havent heard lieder 21:10:03 Coltrane bores me kinda :/ 21:10:05 hes good but 21:10:08 blablabla 21:10:14 not my bad I guess 21:10:16 bag 21:10:18 I liked it 21:10:20 coltrane is lovely. 21:10:39 dizzy is great as well. 21:10:43 hell yeah 21:10:45 not too much of his stuff on limewire though. 21:10:47 <-- trumpet player 21:10:50 oops, did I say that out loud? 21:10:51 but if i'd be to choose, i'd prefer zappa, beefheart and the like 21:10:59 eminem pionered blues back in the 60s 21:11:02 I love schuberts unfinishedso much 21:11:14 * Klaw crawls back under a bridge 21:11:24 * kc5tja thinks he has a working string comparison function! 21:11:35 hi-level ? 21:11:50 lol@klaw 21:12:04 Yes 21:12:04 ianni: I love the unfinished. 21:12:08 I'll re-write it in assembler later. 21:12:11 kc5tja: how many words ? 21:12:15 I just want it working first. 21:12:15 and a lot of schubert's stuff, including Yes, his lieder. 21:12:34 most of the lyrics are german poems set to music. Voice and piano only. 21:12:38 sometimes clarinet. 21:12:52 Speuler: 7 words across two screens. 21:12:54 cool 21:12:58 I don't understand the poems, but the music is lovely. 21:12:59 (most are one word per line) 21:13:02 I like Romantic music yea 21:13:35 kc5tja: seven colon words, created. each one made up from a number of words ? 21:14:09 Yes, it's entirely high level. I did have to make a new primitive 4DUP for it, but however you implement 4DUP, it should work fine. 21:14:19 4DUP is used once. 21:14:35 : 4DUP 2OVER 2OVER ; 21:15:13 so i tried to install java runtime on a freebsd box of mine.. 22 megs compressed.. and it didn't work anyway.. even with linux emulation 21:15:13 so now i need to install JDK1.4 -- which suggest 1.5 gigs free while installing 21:15:18 kc5tja: for your own forth, or somebody else's forth ? 21:15:37 it's insanity 21:16:27 * Speuler got up at 8 pm today 21:16:32 It's for my own Forth, but I'd be happy to share the implementation with anyone who is interested. 21:17:19 it expects ( a1 n1 a2 n2 -- ? ) or ( a1 a2 n -- ?? ) ) 21:18:03 My implementation of COMPARE (as per ANSI's COMPARE semantics) takes ( caddr1 u1 caddr2 u2 -- n ). It relies on a word, CompareMemory, which requires ( caddr1 caddr2 u -- n ) 21:19:05 right. 21:19:13 wanted to point you out to compare 21:19:32 Well, I don't always follow ANSI specification. 21:19:41 For example, neither WORD nor PARSE are supported in my Forth. 21:20:03 I have a different parser structure established which subsumes the role of both WORD and PARSE combined. 21:20:54 there goes another track into LessStructuredNoise 21:20:54 But in this case, supporting COMPARE makes sense. The implementation isn't 100% faithful, but as long as you rely only on the sign of the returned value, it's source compatible. 21:21:40 i'd probably tend to implemend compare as primitive 21:21:43 ent 21:21:58 Speuler: I want correctness, not speed, at this time. 21:22:07 those unstructured jumps can be very handy 21:22:07 I'll optimize later, once I'm satisfied the whole system is working to my liking. 21:22:42 Right now, I have about 27 primtives defined in the target Forth environment. 21:22:58 Though it's not nearly enough to be 100% general purpose yet. 21:23:19 * kc5tja is lagging badly; my roommate is sucking up all my computer's bandwidth. 21:23:27 He's testing some kind of new-fangled Java program he wrote. 21:24:45 Anyway, now that I have a working string comparison function, I can go on to work on the interpretter now. 21:24:57 right 21:25:17 find is important 21:25:36 no fun writing an interpreter without 21:25:52 I think I'm going to differ from ANSI there as well; my dictionary layout follows the cmForth model rather than the F83 model (which ANSI is based on) 21:25:58 * kc5tja nods 21:26:24 that's a compiler voc for immediate words ? 21:26:32 Yes. 21:26:36 nice 21:26:44 I think I'll leave FIND out, and just use SEARCH-WORDLIST or something like that. 21:27:23 * Speuler pours another coffee 21:28:13 kc5tja: tell me what you know about tta 21:28:45 gilbertdeb: Not much except that it's the simplest known processor architecture to date. 21:29:04 You have a set of registers, and one or more internal buses connected to each of these registers. 21:29:20 what about its logic? 21:29:25 Each "instruction" the computer executes is a MOVE instruction: it has a source operand and a destination operand. 21:29:54 Each cycle data is moved from the source register to a destination register on the internal bus(es). 21:30:07 This is the "Transfer" part of TTA. 21:30:14 * Speuler burns his lips on a cup of freshly poured coffee 21:30:20 Some registers are general purpose registers. 21:30:29 Others, however, do stuff when you write to them. 21:30:30 kc5tja: this may be unrelated but it reminds me of a turing machine. 21:30:35 its just a moving tape or head right? 21:30:37 This is the "triggered" part of the TTA acronym. 21:31:23 gilbertdeb: No, but it can be used to emulate such a system. The SJNZ-machine is more like the original Turing machine. TTAs are actually simpler than the Turing machine, as I recall them. 21:31:28 * kc5tja may be wrong about that though. 21:31:38 _simpler_ ? 21:31:39 * kc5tja isn't a computer scientist, so I don't have the deep mathematical foundations of computation. 21:31:43 Yes. 21:31:54 now thats what phyiscists say: lower, simpler ... 21:31:54 TTAs work by specifying data interconnections, *NOT* operations. 21:32:02 and then they start talking easter mysticism. 21:32:17 eastern. 21:32:24 ?? 21:32:27 I don't understand. 21:32:44 it would take too long to explain. 21:33:02 i was referring in part to what I was told in school about the internal structure of atoms... 21:33:15 The Turing machine works by having the read head reading some data, permuting the data in some manner, then writing out that permuted data, then advancing the position of the read/write head. 21:33:16 and what quantumists are finding at the deeeeeper levels. 21:34:19 The MOVE architecture works solely by moving data. Strictly speaking, a MOVE processor never permutes data -- it just moves it to and from various registers. 21:34:50 in that case, it could be done with valves and pipes etc. 21:35:00 and lots of water. 21:35:03 What actually does the processing is, basically, peripherals that are attached to the internal buses of the processor. These peripherals do their work when data is written to special registers (e.g., so-called "trigger" registers). 21:35:56 heheh. Trees (the living thing for you geeks) might already have the basic thing figured out already :D 21:36:27 A good example of triggering is sending data to a UART chip. 21:36:42 As soon as data is written to the TX register, data starts shifting out the serial port. 21:39:42 i'll nod and pretend I know what uart means as I google for it. 21:40:00 labs.google.com , i love that glossary 21:40:03 i love phoenix too.. g 21:40:35 gilbertdeb: Universal Asynchronous Receiver/Transmitter -- it's the chip inside your computer that controls your serial ports. 21:41:13 yep. just caught that from webopedia 21:43:10 kc5tja: you were saying something about the simplicity of the stack chips earlier... 21:43:24 MISC vs something else it was. 21:44:58 MISC versus RISC probably. 21:45:27 I think it was. 21:45:37 can one not find within a RISC, the MISC? 21:46:11 No; MISC chips usually have minimal instruction counts -- less even than RISCs. 21:46:41 and to learn misc asm is to learn forth for the most part right? 21:47:36 Pretty much. 21:47:44 But it's a pretty stripped down version of Forth. :D 21:48:02 too many words lead to synonyms imho 21:48:22 then you no longer have esperanto... 21:48:26 then you have something else. 21:49:16 Too little words leads to massive duplication of effort too. 21:49:23 Which leads to too many words. 21:49:36 too many 'different' words. 21:49:36 I don't want to get into this; this road leads right back to the issue of complexity from yesterday. 21:49:41 :) 21:49:48 I was just about to say. 21:50:08 I'll BRB -- switching to 100baseT for a few moments. 21:50:15 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 21:50:19 bah, just get the ghz 21:55:20 why stop there 21:55:30 Thz? 21:55:42 ianni: after a while diminishing returns might set in. 21:56:13 the machine might be the connections bottle neck ! 21:57:06 ;) 22:06:57 --- join: kc5tja (~kc5tja@ip68-8-206-137.sd.sd.cox.net) joined #forth 22:07:26 back 22:08:41 Well, I think I'm going to head off. I'm somewhat hungry, and I've got to sleep for school. 22:08:48 --- quit: kc5tja (Client Quit) 22:28:28 --- join: futhin (futhin@dial-155.ocis.net) joined #forth 22:37:37 hello 22:39:21 hi futhin 22:41:44 --- quit: Robert (Read error: 54 (Connection reset by peer)) 22:43:47 sup gilbertdeb 22:44:05 got any _cool_ forth projects? :P 22:45:49 --- join: Robert (~snofs@h138n2fls31o965.telia.com) joined #forth 22:48:09 hello robert? 23:12:31 --- quit: futhin ("Leaving") 23:31:15 --- join: ramnull (~nicad@12-241-145-39.client.attbi.com) joined #forth 23:31:29 What it be? 23:59:59 --- log: ended forth/03.04.14