00:00:00 --- log: started forth/03.09.21 00:00:04 --- quit: Herkamire ("bedtime") 00:12:37 * arke is back (gone 07:23:18) 00:51:56 * arke is away: sw33t sl33p, sw33t l4di3s in my dr34ms, st4y h3r3 with m3, l3ts h4v3 fun... 01:57:11 --- join: mur (murr@baana-62-165-186-174.phnet.fi) joined #forth 02:06:55 --- quit: arke (zelazny.freenode.net irc.freenode.net) 02:06:55 --- quit: Robert (zelazny.freenode.net irc.freenode.net) 02:06:55 --- quit: ChanServ (zelazny.freenode.net irc.freenode.net) 02:06:55 --- quit: I440r_ (zelazny.freenode.net irc.freenode.net) 02:06:55 --- quit: jstahuman (zelazny.freenode.net irc.freenode.net) 02:06:55 --- quit: mur (zelazny.freenode.net irc.freenode.net) 02:06:55 --- quit: SDO (zelazny.freenode.net irc.freenode.net) 02:06:56 --- quit: ianP (zelazny.freenode.net irc.freenode.net) 02:06:56 --- quit: onetom_ (zelazny.freenode.net irc.freenode.net) 02:06:57 --- quit: I440r-wrk (Read error: 104 (Connection reset by peer)) 02:08:07 --- join: ChanServ (ChanServ@services.) joined #forth 02:08:07 --- join: mmanning (~mmanning@64.238.237.215) joined #forth 02:08:07 --- join: mur (murr@baana-62-165-186-174.phnet.fi) joined #forth 02:08:07 --- join: I440r_ (~I440r@sdn-ap-005txhousP0299.dialsprint.net) joined #forth 02:08:07 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 02:08:07 --- join: SDO (~SDO@co-trinidad1a-42.clspco.adelphia.net) joined #forth 02:08:07 --- join: onetom_ (~tom@cab.bio.u-szeged.hu) joined #forth 02:08:07 --- join: jstahuman (dan@pcp053555pcs.brlngt01.nj.comcast.net) joined #forth 02:08:07 --- join: Robert (~snofs@h31n2fls31o965.telia.com) joined #forth 02:08:07 --- join: ianP (ian@inpuj.net) joined #forth 02:08:07 --- mode: zelazny.freenode.net set +o ChanServ 03:27:18 --- quit: I440r_ (Ping timeout: 14400 seconds) 04:16:45 --- join: TheBlueWizard (TheBlueWiz@pc25dn1d.ppp.FCC.NET) joined #forth 04:16:46 --- mode: ChanServ set +o TheBlueWizard 04:18:16 hiya all 04:19:18 terve :) 04:19:41 mitä kuuluu? 04:19:45 terve...feeling better? 04:20:43 me...nothing new other that I get on early to get done with Internet stuff before doing household chores today :) 04:21:13 :) 04:23:13 um...are you feeling better now? 04:27:35 hmm 04:27:38 physically? 04:28:52 last night you said you are not feeling well 04:29:04 and I said, "Go to bed" :) 04:29:14 Hi mur & TheBlueWizard 04:29:44 hiya Robert 04:29:54 oh 04:30:03 well i was feeling tired in morning but i'm oknow 04:49:17 good :) 04:49:35 well, gotta go now...bye all 04:49:39 cya 04:49:55 bye mur :) 04:49:59 --- part: TheBlueWizard left #forth 04:51:45 --- quit: jstahuman (zelazny.freenode.net irc.freenode.net) 04:52:43 --- join: jstahuman (dan@pcp053555pcs.brlngt01.nj.comcast.net) joined #forth 08:08:22 * arke is back (gone 07:16:24) 08:39:44 --- join: I440r (~I440r@sdn-ap-005txhousP0299.dialsprint.net) joined #forth 08:42:52 --- quit: arke (Read error: 110 (Connection timed out)) 08:46:31 Hey. 08:49:11 hi 09:00:19 --- join: I440r_ (~I440r@sdn-ap-019txhousP0392.dialsprint.net) joined #forth 09:18:26 --- join: XeF4 (~xef4@isozyme106.gprs.suomen2g.fi) joined #forth 09:19:19 hi 09:19:23 hi 09:20:05 xexexexexff 09:23:25 --- quit: I440r (No route to host) 09:46:57 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 09:46:58 --- mode: ChanServ set +o kc5tja 09:51:04 hoi 10:37:39 --- join: Speuler (~Speuler@mnch-d9ba4801.pool.mediaWays.net) joined #forth 10:38:02 'day 10:38:15 --- quit: mur ("Murr.") 10:38:24 gdays 10:38:57 bongo :) 10:39:03 my x86/linux compiler is taking on shape 10:39:06 hi mark ! 10:39:21 can compile a number of things already 10:39:33 cool 10:39:42 creates stand-alone x86 code, ELF 10:39:56 u used isforth as a reference ? 10:40:04 reference ? 10:40:27 didn't know isforth can compile stand-alone code 10:40:28 as in "now how would i do that".... 10:40:47 I440r_, you seem to underestimate me :) 10:40:50 it can create turnkey applications that will run on any machine even if isforht isnt installed there 10:41:06 nono - im sure you couold figure it all out heh 10:41:15 small programs compile to about 100 bytes 10:41:19 FS/Forth for Linux will eventually be able to do the same. 10:41:33 I've been considering going that route myself. 10:41:34 100 bytes including ELF header? 10:41:38 yes 10:42:00 "program" is then trivial of course 10:42:06 XeF4: Look at some of the Linux assembly programs out there -- they totally bastardize and rape the ELF header by putting executable code into unused fields in the header. 10:42:18 i didn't 10:42:28 you mean the teensy executable files 10:42:33 Yes. 10:42:39 Like, file copy in 64 bytes or something. 10:42:40 yes - thats dumb 10:42:43 but is used it as ref to build my elf header 10:42:44 * kc5tja nods 10:42:48 that doesnt help anyone learn the elf stuff at all 10:42:56 kc5tja: I've written several such stubs myself. 10:43:12 And it's downright destructive when you need symbol relocation information. :-) 10:43:22 (which I think I'll be needing) 10:43:24 i don't do any optimizing right now 10:44:09 The only optimization I do in FS/Forth's target compiler is tail-call optimization. That's so I can get away with the reduced set of control-flow words. 10:44:19 an example of code is on http://www.forthfreak.net/index?NativeCodeCompiler 10:44:35 I will be adding support for literals and literal optimization shortly. 10:44:43 almost outdated, as it can compile colon words too now 10:44:47 That way, + can expand to add eax,n where appropriate, among other primitives. 10:45:06 : count 1+ dup 1- c@ ; : foo >r count + r> ; and the like 10:45:29 i keep the optimizing stuff for later 10:45:58 Since all my primitives are immediate words, it makes sense to exploit the x86 architecture up-front. 10:46:05 wondered whether anyone wants to join into the development 10:46:30 source is still pretty dirty 10:46:58 will have to clean it up a bit, once i can resolve from libraries 10:47:20 'll go the same route as fthcmp 10:47:44 Never heard of fthcmp. 10:47:45 lib included at the end of main prog, resolves all forward refs 10:47:52 Ahh 10:48:07 words included from lib may create new fwd refs 10:48:08 Which references would be unresolved? 10:48:23 the ones used in main prog, to be resolved from library 10:48:45 to make sure only required code goes init the executable 10:48:59 what is not referenced, is skipped 10:49:02 That's a circular definition if I'd ever heard one. 10:49:09 What references would those be? :) 10:49:15 : main 5 . ; 10:49:17 Forth primitives? OS-specific bindings? 10:49:17 . is unresolved 10:49:27 library included, resolves . 10:49:28 OK, you're going a totally different route than I am then. 10:49:37 . creates new fwd ref, for example to emit 10:49:52 I'm following the Chuck Moore cmForth/PygmyForth approach -- every Forth program has at least the core kernel inside it. 10:50:01 none here 10:50:21 an empty program contains just the code to exit it 10:50:39 no threaded code in the executable 10:50:48 plain machine code 10:50:53 I don't have any threaded code either. 10:51:27 I'm just saying, when I "save" a forth program as a turnkey, it saves the entire Forth environment into that ELF. 10:51:39 The Forth kernel is so small that I can afford to do that. 10:51:41 yes, you do. 10:51:42 i don't 10:51:59 i don't want a hello world program which is 2 k big 10:52:09 could use c if i wanted that :( 10:52:33 Speuler: how does the turnkey compiler know what to copy from the dictionary? 10:52:52 it just resolves what hasn't been resolved yet 10:52:56 from the lib 10:53:42 every reasonably complex word creates new fwd refs 10:53:52 all of them need to be resolved 10:54:05 that's the code compiled into the executable 10:54:15 so it is a two-pass system? 10:54:18 no 10:55:17 : foo 5 . ; ... ( lib: ) u: . 0 <# #s #> type space ; u: <# ... ; u: # ... ; .... 10:55:55 lowest level code is at the end 10:55:56 u: means "compile if unresolved" 10:56:59 Interesting -- this means your Forth compiler directly supports writing software in a top-down fashion, being READ in a top-down fashion. 10:57:10 so the interpreter just emits some filler bytes when it encounters an unresolved word and resolves them when compiling the lib? 10:57:27 that's a characteristic of fwd refs in general. not typical for my compiler 10:57:34 right 10:58:01 oldish interpreters of mine supported fwd refs already 10:58:09 was experimenting with those 10:58:30 I guess you don't care that makes redefinitions work in a totally nonintuitive way 10:58:51 it is a compiler, not an interpreter 10:59:00 you would use redefs in interpreters mainly 10:59:14 and no, i don't care 10:59:46 if i don't want a word resolved from lib, i define it in main program, thats akin to redefining it 11:00:07 only, that the code from lib won't be inlcuded 11:00:31 how is that non-intuitive ? 11:01:06 but eg : foo 5 . ; : . bar faz ; : quux 42 . ; 11:01:49 . is defined by the time the compiler gets to u: . but not when foo is compiled 11:02:15 no, . is defined there : : . bar faz ; 11:02:32 that resolves the : foo 5 . ; 11:02:47 and : quux 42 . ; won't create a fwd ref 11:02:58 after all, . has already been defined 11:03:04 --- quit: XeF4 ("Lost terminal") 11:03:47 that works well with cforth and fthcmp. 11:04:04 i don't see a reason why it shouldn't fork for my compiler 11:04:09 work 11:05:47 mmanning, there is an isforth page on the forth wiki btw 11:05:57 but it could need some polish/more details 11:06:17 --- join: XeF4 (~xef4@62.78.107.106) joined #forth 11:06:31 hmm .. somebody has already added some text to it .. 11:07:05 anyway, that means that plain colon redefinitions affect the behaviour of words defined before the redefinitions occur 11:07:19 that works well with cforth and fthcmp. 11:07:22 i don't see a reason why it shouldn't fork for my compiler 11:07:27 work 11:07:47 i used that kind of resolving from lib for about 8 years 11:08:16 there is no redefinition 11:08:38 it is either, resolving from lib, or form your own definition 11:08:44 from 11:09:20 by definiting the word yourself, you prevent the lib word to be compiled 11:09:34 as only unresolved words get compiled 11:09:44 (more or less) 11:10:08 contructs like undef foo : w1 .. ; : w2 ... ; : foo w1 w2 ; are possible 11:10:17 w1 and w1 are not fwd ref'd 11:10:23 --- join: XeF4_ (~xef4@thymine227.gprs.suomen2g.fi) joined #forth 11:10:48 rrrkele 11:11:09 Hi 11:11:23 too 11:11:43 --- quit: XeF4 (Nick collision from services.) 11:11:46 --- nick: XeF4_ -> XeF4 11:18:14 i've seperated the code generator from the opcodes 11:18:17 * XeF4 shouldn't say this in here, but has a compulsive need to do so: static compilers defeat the entire purpose of forth 11:18:43 how ? i'm still free to run an interpreter 11:18:57 and use the compiler to generate stand-alone code 11:19:11 because the program no longer has a live system it can abuse where needed 11:19:26 depends on what i compile into it 11:19:34 : main quit ; 11:19:36 :) 11:20:26 and fitting dictionaries + a tiny inner interpreter/compiler does _not_ lead to 2K hello worlds 11:20:47 : main ." hello world" ; 11:21:33 yes, and? 11:21:34 what do i need dictionaries for, when outputting a string ? 11:21:44 to "abuse" the string ?? 11:22:07 you don't, but that is quite an uncommon case where a program does nothing but output a string and leave 11:23:35 i could easily contruct a slightly more complex example which still does not need vocabularies, but does something useful 11:24:00 say, a filter 11:24:41 * Speuler has the impression XeF4 argues for the sake of arguing 11:27:28 mmanning: from the isforth docs: "any forth which can't compile its own source code is in your eyes not worth using" , and later "you need nasm and gnu make to build isforth", later "for each platform, a new kernel will be written from scratch" 11:27:55 what are you trying to say by that ? 11:29:43 * Speuler couldn't help grinning when he read that 11:32:17 --- join: XeF4_ (~xef4@anneal34.gprs.suomen2g.fi) joined #forth 11:32:44 Speuler: from time to time, but I really do think static forth compilers are useless 11:33:35 they maybe for you. but they may be useful for others 11:33:57 every thought about distributing an executable ? 11:34:55 an, you may compile a forth interpreter into the executable if you desire 11:35:22 even a slimmed-down version of one 11:35:30 I've thought about distributing an executable 11:36:05 and the basic runtime stuff can be fit into <1KB which is at least a lot less than the C runtime stubs 11:36:17 actually.. now I am arguing for the sake of arguing 11:37:14 do you have the option to remove it if desired ? no. can you compile that stuff into the executable with a compiler? yes. 11:37:36 so the compiler gives you a superset of possibilities 11:37:57 if you don't need it, just don't use it 11:38:22 but arguing "they are unnecessary" from that, documents a narrow horizon 11:39:04 which i seem to have noticed before with you 11:39:06 does it give me a superset of possibilities? It prevents free redefinitions to start with 11:39:50 no, it doesn't 11:40:24 : foo 5 . ; : . dot1 ; ( resolves ) : . dot2 ; : bar . ; ( using dot2 ) 11:41:03 or even: : . dot1 ; : foo . ; : . dot2 ; : bar . ; 11:41:55 then I suppose it's somewhat usable 11:42:02 library def applies ONLY if the word is UNRESOLVED 11:42:21 and if it is unresolved, there can't be a redefinition of the word 11:43:14 so to use the library . for awhile before other redefs one must : . . ; ? 11:43:42 no, you just leave it UNRESOLVED , like in : foo 5 . ; 11:44:14 your example WOULD work but is unnecessary 11:46:11 same way you could argue "to be able to use . , i have to define it likes this : . . ; first 11:46:47 (in a normal interpreter, i mean to say) 11:50:35 --- join: XeF4__ (~xef4@thymine116.gprs.suomen2g.fi) joined #forth 11:50:49 --- quit: XeF4 (Read error: 110 (Connection timed out)) 11:51:45 21:45 < XeF4_> so to use the library . for awhile before other redefs one must : . . ; ? 11:52:07 no, you just leave it UNRESOLVED , like in : foo 5 . ; 11:52:09 your example WOULD work but is unnecessary 11:52:14 same way you could argue "to be able to use . , i have to define it likes this : . . ; first 11:52:22 (in a normal interpreter, i mean to say) 11:52:54 ou seemed to imply that : foo 5 . ; : . dot1 ; would compile foo against dot1 11:53:36 right. foo creates the fwd ref of . , which is resolved by : . dot1 ; 11:53:56 : . dot1 ; : foo . ; would be the same 11:54:11 so how do I 11:54:13 oops 11:54:36 so how do I compile foo against the library . and make dot1 apply to subsequent definitions 11:55:10 you can't 11:55:37 this is what I was saying 11:55:46 ? 11:56:04 how do you compile a forth program normally if you don't define . ? 11:56:23 . is defined before the first reference is encountered 11:56:32 the lib is for resolving what you haven't got yet 11:56:38 i.e. there are only backward references to the lib . 11:56:54 what you do already have, does not need resolving form lib 11:57:00 well, you can 11:57:27 : foo . ; include lib : . mydot ; : bar . ; 11:57:38 yes it does, because I want to use the lib defs most of the time and my own debug-info-printing ones in some spots 11:59:18 with fthcmp/cforth i have arranged the lib so that it can be included several times 11:59:26 was necessary for tsrs 11:59:50 resolve after resident part, then resolve after the non-resident part 12:00:28 so that no open fwd refs in the tsr part were left over, with code only in the transient part 12:00:58 so first include resolved al refs in the tsr part. 12:01:14 and later, the transient remaining fwd refs were resolved too 12:01:50 result was that the tsr part contained only the code required by the tsr part. 12:02:08 and the transient parts additionally the throw-away stuff 12:06:29 *nod* 12:06:43 --- quit: XeF4_ (Read error: 110 (Connection timed out)) 12:15:09 btw, it is not a good example you gave: redefining . for testing purposes implies your still testing/debugging. 12:15:27 a compiler you tend to use after you're finished with that 12:15:54 I'm aware of that, but there are bugs that don't always behave in the same way in 2 different environments 12:17:09 those would be bugs which don't show with the interpreter, but with the compiled stand-alone program 12:17:24 (chances are that those are compiler bugs :) 12:18:23 if they just behave differently, you neglected to fix the bug in the interpreter version 12:19:04 if not compiler bugs, then bugs in the library code 12:19:24 or faulty assumptions that happen to be true in the interpreter 12:21:16 i'd probably change . to .. or whatever at those place i want a debug version of dot, instead of a redefinition (and suffer from that one through the rest of the program) 12:22:00 indeed, i try to avoid redefinitions, as those are the cause of a whole new set of problems 12:22:22 that's what you don't want, especially when debugging 12:22:37 I seldom have problems with them 12:22:49 seldom != never 12:23:23 by avoiding them, i can never have problems with them 12:23:39 true, but it's quite seldom indeed 12:23:59 often enough to not expect the redef to be the cause of the problem :) 12:25:46 actually, I have never encountered a problem using redefs in that way but I don't want to say "I never have problems" because that is asking for trouble. 13:02:40 --- join: fridge (~fridge@dsl-203-33-160-145.NSW.netspace.net.au) joined #forth 13:03:09 I just recieved an amiga 2000.... the guy who owned it previously was a forth nut, I think he has no less than 5 seperate forth environments ;) 13:07:13 nice =) 13:09:24 back 13:09:32 OOoohhh...A2000s are good work-horse machines. 13:11:11 I need to buy a scart adaptor first 13:11:16 no video! 13:11:30 but all the other signals say it is in good healthy 13:11:36 condition 13:11:59 No video? 13:12:11 Or, you just don't have an Amiga-compatible monitor? 13:12:15 * fridge nods 13:12:19 it has scart-out 13:12:21 (well, an NTSC monitor that has an Amiga video port on it) 13:12:23 I have nothing with scart-in 13:12:26 * kc5tja isn't familiar with SCART. 13:13:09 I wonder if amigas were converted to PAL when released in .au 13:13:21 kc5tja: SCART is a european AV interconnect standard 13:13:25 Amigas have always been NTSC and PAL. 13:13:55 once I get it working 13:14:05 I am taking it down into the bomb shelter 13:14:07 no internet 13:14:11 no disruptions ;) 13:15:07 Heh :) 13:15:22 No Internet. No Disruptions. Just Forth. And AmigaOS. :D 13:15:25 fridge: you can make a scart->rca cable pretty easily 13:15:26 Probably AmigaOS 1.3 13:16:07 XeF4__: can you find me a wiring diagram... I tried pushing the compsite cable onto a few cables and got some signal.... but not a picture 13:16:39 not having a multimeter at the time, it was the best I could do to test if there was actually signal coming out the cable 13:17:01 I'm surprised that a2000 has scart out though 13:17:13 I tried to search for one, but I only found people trying to sell me things 13:17:44 http://www.drdish.com/knowledge/0005/000504.shtml 13:17:58 though I don't know if there is composite in the A2000's scart port 13:19:51 If it's anything like the Amiga 500 (the 500 and 2000 are virtually the same computer), it'll likely be monochrome. 13:20:49 500 has rgb out+monocrhome, but there is are also rgb pins in a scart plug 13:21:04 there is a seperate video out 13:21:07 mono video 13:21:20 I'm saying, if it does have composite, it'll probably be just composite monochrome. 13:21:28 but that doesn't have any signal.... if its not coming through the scart, I'm in trouble =( 13:22:13 you can get a composite modulator second-hand easily enough, look for a 2nd-hand A500 13:23:15 http://tinyurl.com/f3pd 13:23:19 I was just going to get that 13:23:37 So the Amiga's all had SCART-compatible video ports? The Amiga 500 that I have has a 23-pin video adapter on the back. I'm pretty confident it's not SCART. But according to the page posted above, the SCART port has 21 pins. 13:23:40 fridge, http://www.hardwarebook.net/connector/av/amigavideo.html 13:24:02 I didn't think it was. Thanks for the confirmation. 13:24:33 fridge, http://www.hardwarebook.net/connector/bus/videoexpansionamiga.html 13:25:00 fridge: Does the Amiga have both a SCART and an Amiga video port? 13:25:08 fridge, http://www.hardwarebook.net/connector/power/amiga2000power.html 13:25:37 fridge, http://www.hardwarebook.net/connector/userinput/keyboardamiga5.html 13:25:51 fridge, http://www.hardwarebook.net/connector/userinput/amigamousejoy.html 13:26:31 fridge, http://www.hardwarebook.net/cable/av/amigascart.html 13:26:36 kc5tja: it came with a cable that is amiga video port one end, scart on the other 13:26:45 Speuler: thanks! 13:26:53 your welcome 13:27:02 fridge: Gotcha. 13:28:11 fridge: oh.. OH.. I thought you meant there was a scart port in the back of the Amiga 13:29:01 XeF4__: whoops, sorry I wasn't clear 13:29:49 :) 13:30:11 Well, I hope it works out for you. 13:30:22 fridge: then you "just" need an rgb monitor that works with 15khz sync 13:30:27 I, in the mean time, will be showering, and after that, riding on my bike. 13:30:45 * kc5tja strongly recommends a Commodore 1084 or 1084S. 13:31:29 If you can find one in working condition, those monitors are ideal for use with the Amiga. You do need a compatible cable between them though -- the 1084(s) doesn't have a 23-pin video port on the back. It ought to be relatively simple to make a cable for it though. 13:31:37 ebay can't help me 13:32:02 iirc, they have the same 9-pin connection as the 1083 13:32:32 * kc5tja isn't familiar with the 1083. 13:33:09 but if I buy a scart-> composite adaptor a normal tv should suffice? 13:33:22 not sure of the history of it,but this 1083S has the RGB input, no composite and is in a somewhat modern-looking case 13:33:27 Video quality might suffer a bit, but that ought to work. 13:33:41 oooh goody. 13:33:44 there are identations in the plastic where composite ought to be but they are not driled through 13:34:08 fridge: erhm, scart has pin assignments for both rgb and composite 13:34:19 so you need an rgb->composite converter 13:34:25 XeF4__: My 1084S also lacks composite input through RCA plugs. It does support composite in through one of its DIN ports though. 13:34:53 fridge: there are little dongles for the 23-pin amiga video port with composite output fwiw 13:34:55 I'm not using that port though -- I'm using the analog RGB input. 13:35:04 kc5tja: this has no DIN ports, just a single db9 13:35:16 Oh, my monitor has two DIN ports on the back. 13:35:17 and a toggle switch between analog/digital rgb 13:35:50 Yep. I have an analog RGB DIN port, and TTL RGB DIN port, plus said switch. I think composite signals can go into the TTL RGB port, IIRC. 13:35:54 It's been a few years since I looked. 13:36:54 Well, I'm off to take a shower. I'm feeling pretty icky. 13:37:04 * kc5tja is away: shower, then bicycling... 13:45:44 --- join: jamc (~user@as3-6-8.asp.s.bonet.se) joined #forth 13:46:57 --- join: XeF4 (~xef4@62.78.104.90) joined #forth 13:47:40 http://tinyurl.com/o5a8 14:04:03 fridge: is 2nd-hand Amiga stuff hard to find where you are? 14:04:24 yes 14:05:11 computer markets don't stock anything other than beige x86... trading post and ebay etc are the only real source 14:06:36 --- join: I440r (~I440r@sdn-ap-008txhousP0202.dialsprint.net) joined #forth 14:07:52 --- quit: XeF4__ (Read error: 110 (Connection timed out)) 14:20:03 --- join: i440R___________ (~I440r@sdn-ap-010txhousP0419.dialsprint.net) joined #forth 14:25:57 --- quit: I440r (No route to host) 14:26:16 --- quit: I440r_ (No route to host) 14:26:25 --- join: XeF4_ (~xef4@primer252.gprs.suomen2g.fi) joined #forth 14:30:24 --- quit: XeF4 (Read error: 110 (Connection timed out)) 14:48:02 --- part: jamc left #forth 14:53:52 --- part: Speuler left #forth 15:08:45 * kc5tja is back (gone 01:31:40) 15:12:56 --- join: I440r_ (~I440r@0-2pool71-21.nas3.longview1.tx.us.da.qwest.net) joined #forth 15:12:56 --- quit: I440r_ (Client Quit) 15:26:38 --- quit: i440R___________ (No route to host) 15:49:57 --- join: XeF4 (~xef4@vivo171.gprs.suomen2g.fi) joined #forth 16:13:59 --- quit: XeF4_ (Read error: 110 (Connection timed out)) 16:28:33 --- join: yasam (~sam@210-54-206-171.dialup.xtra.co.nz) joined #forth 16:34:45 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 16:36:59 * arke is away: I'm busy 16:37:25 * arke is back (gone 00:00:02) 16:47:56 --- join: gilbertdeb (~gilbert@fl-nked-ubr2-c3a-37.miamfl.adelphia.net) joined #forth 16:49:25 y0 all!!!! 16:50:18 ytu[20~[21~0 16:50:19 y0 16:52:57 herm? 16:53:04 --- join: XeF4_ (~xef4@plasmid63.gprs.suomen2g.fi) joined #forth 16:53:31 --- quit: gilbertdeb ("Told you I could quit any time!") 16:56:00 can I call C functions from gforth? 16:56:08 that would be nice ..... 16:56:15 you will from rkforth 16:56:18 once its done :) 16:57:01 --- join: kc5tja_ (~kc5tja@66-91-231-74.san.rr.com) joined #forth 16:58:04 will rkforth be portable? 16:58:04 --- quit: kc5tja (Nick collision from services.) 16:58:12 --- nick: kc5tja_ -> kc5tja 16:58:17 --- mode: ChanServ set +o kc5tja 17:00:28 see details section for more information? you mean design section? 17:00:44 oops big assumption 17:04:28 arke: are you Chris Walton? 17:06:54 yasam: uum, yeS? 17:07:07 yasam: and yes again :) 17:07:24 first, though, ill have it spit out pure DOS .com binaries :) 17:07:44 yasam: heh, ignore the website, its outdated. 17:09:30 If it is to be a nice little portabl forth with the graphics, I say keep up the good work 17:10:15 heh, havent gotten far at all yet :) 17:10:36 --- quit: XeF4 (Read error: 110 (Connection timed out)) 17:21:44 hmm, perhaps Ill hook up pforth to the SDL 17:22:58 * kc5tja is writing FS/Forth, which will have a binding to SDL. 17:23:19 In fact, it's first user interface will probably be SDL, because I don't feel like putting up with the total bullcrap that is Linux console or X11. :D 17:23:43 cool 17:24:00 SDL makes coding for Linux half-way fun again. 17:24:03 and I agree 17:24:29 :) SDL is great. it needs a decent widget system tho 17:25:03 * kc5tja doesn't think so. I like SDL just the way it is. 17:25:52 There are a couple of projects I want to undertake with FS/Forth. 17:26:11 The first is a printed circuit board editor, which possibly will expand into a circuit simulator too. 17:26:35 The second is a programmable logic device programmer/simulator/HDL type system. 17:27:39 kc5tja: i mean, a library which povides simple buttons etc., paragui just isnt cutting it :) 17:28:09 Third, I want to model a Constantinesco torque converter with it. I want to build a bicycle with one installed, but machining parts are very, very expensive -- hence, I want to make sure I get things right the first (few) times instead of just "guessing." 17:30:55 --- join: junk (~junk@njd.paradise.net.nz) joined #forth 17:31:26 --- quit: junk (Client Quit) 17:31:29 And of course I have other projects too. but those come right to mind. 17:31:56 For example, one game I'd like to code up is a game of Hearts. But, I've been thinking of doing that for Chuck's ColorForth, actually. 17:31:58 --- quit: fridge ("http://lice.codehack.com") 17:32:28 I want to write some code for playing around with and visualising graphs 17:33:29 * kc5tja nods 17:33:35 --- join: XeF4 (~xef4@plasmid158.gprs.suomen2g.fi) joined #forth 17:33:46 for a research project, the members of which use various OSs so I need a portable forth with graphics 17:33:49 --- join: [Forth] (~Forth@njd.paradise.net.nz) joined #forth 17:34:01 My CTC simulator will try to render a simple wireframe model of the torque converter as it's "operating," letting the user change parameters in real-time while it is simulating. 17:34:05 [Forth]: greets 17:34:14 --- quit: [Forth] (Remote closed the connection) 17:34:19 heh 17:34:24 yasam: I fully understand. 17:34:30 arke: Potentially a bot? 17:34:44 it was 17:35:13 kc5tja: i found a reason: a new colorforth which uses real keyboard mapping and is portable to major os'es and itself (as in, can be its own OS as well) 17:35:15 njd.paradise.net.nz -- didn't see that. :) 17:35:22 njd? 17:35:30 h 17:35:30 heh 17:35:31 arke? 17:35:40 njd? 17:35:50 arke: ColorForth fits all those qualifications, except the keyboard. But I find the keyboard isn't THAT much of an issue in practice. 17:36:07 It does take some getting used to, but I find it to be rather comfortable. 17:36:16 i dont really :) 17:36:30 kc5tja: and you cant port colorforth to, lets say, ppc 17:36:39 Well, I am equally at home with Dvorak as I am with Qwerty (though I'm out of practice now), so it's not much an issue for me. 17:36:49 dvorak? 17:36:55 oh, nvm 17:36:56 arke: Portability is a myth. Rewrite it from scratch. It's not that hard. 17:37:03 njd: fellow nz forther? 17:37:10 arke: His keyboard mapping is a 27-key Dvorak mapping. 17:37:43 I agree that for my Forth, making use of the full keyboard makes more sense to me 17:38:18 But there is a great advantage to having only 27 keys -- the input task is made much simpler and the entire decision-tree for a program can be expressed as a single jump-table. That's really, really convenient. 17:38:33 * kc5tja wishes that were practical with the full 104-key keyboards. :) 17:39:44 heh 17:41:48 how can i tell xp to pretend to treat my keyboard as a dvorak? 17:43:09 kc5tja: how far have you progressed on your forth? 17:48:40 --- quit: jstahuman (Read error: 110 (Connection timed out)) 17:50:02 * arke is making dvorak stickers for his qwerty keyboard 17:50:08 --- quit: XeF4_ (Read error: 110 (Connection timed out)) 17:52:09 I'm still working on its target compiler. 17:52:20 The target compiler is written gforth. 17:52:46 But I have it compiling words and performing tail-call optimization. 17:52:53 I just need to implement numeric literals now. 17:53:42 I have a 16KB code space, and a 24KB Forth dictionary (no Compiler dictionary yet). 17:54:21 Once I'm pretty happy with things, I'm going to investigate the ELF header -- I'd like the target compiler to build a proper ELF executable for Linux. 17:55:28 Right now, it's just building a plain vanilla static image. 17:55:41 * kc5tja doesn't know much about the ELF header except the basic, basic stuff. 17:56:08 linuxassembly.org has elf info, i beliece 17:58:09 Yeah 17:58:15 I have the ELF specification on my other drive. 17:58:25 I'm going to read through it and cross-reference it with that site. 17:58:30 Great, GPL? 17:58:51 yasam: I'm thinking public domain or libpng license -- GPL is entirely too heavyweight for its own good. 18:00:42 I quite agree, PD would be my preference, if only because realistically the others are idle threats 18:00:55 from most people 18:01:43 * kc5tja nods 18:02:15 Besides, I don't like the thought of donating my hard work to RMS when he is violently opposed to Objective-C, let alone a bizarre language like Forth. 18:02:40 RMS? 18:03:03 (so opposed, in fact, that he proposes vociferiously to change the standard of the language to suit his personal political agenda -- don't use #import, use instead #ifndef/#include/#endif <-- precisely the type of thing that #import is designed *SPECIFICALLY* to avoid. 18:03:19 Richard M. Stallman -- the man and brains behind GNU. 18:03:50 the "free" software foundation I dont think 18:05:02 * kc5tja nods 18:05:18 I might be interested in poritng your forth to Mac OS X, when it has come along a bit 18:05:46 yasam: It won't be easy. I'm writing a native code producing Forth. 18:05:55 --- quit: XeF4 (Read error: 110 (Connection timed out)) 18:06:07 But you can certainly look at how FS/Forth works, and make a PowerPC Forth that behaves similarly. 18:07:15 ANSI? 18:08:28 --- join: XeF4 (~xef4@62.78.124.220) joined #forth 18:09:07 It would be good at least to have cross platform graphics words 18:11:09 what's the word that shows the words that make up other words? 18:11:09 heh 18:12:01 see 18:12:02 ? 18:12:13 --- quit: arke (Read error: 104 (Connection reset by peer)) 18:12:20 yup thats it 18:12:21 thanks 18:13:05 Are you a Kiwi? 18:13:11 No, quite definitely not ANSI. :) 18:13:20 * kc5tja doesn't believe in the ANSI philosophy. 18:13:52 yes 18:14:14 --- join: arke (~rk@ca-cmrilo-docsis-cmtsj-b-36.vnnyca.adelphia.net) joined #forth 18:15:01 Yes niether do I, do you have any info up on a website? 18:15:12 njd: me too :) 18:15:14 No, not yet. 18:15:32 what city 18:15:53 Palmerston Nth 18:15:59 * kc5tja is going to wait until I have it working before publishing anything on it. 18:16:03 hmm 18:16:06 (sort of) on a farm 18:16:11 heh 18:16:40 you? 18:16:49 chch 18:17:53 You folks have weird city names. Palmerston Nth, Chch, ... :) 18:18:07 j/k 18:18:34 heh 18:19:29 --- join: jstahuman (dan@pcp053555pcs.brlngt01.nj.comcast.net) joined #forth 18:22:23 kc5tja: lean and mean or bloated? 18:23:29 yasam: It's so lean, it won't even have a default shell in the kernel. 18:23:42 It'll load its shell from block storage as if it were any other application. 18:24:14 (At least, that's my plan. Whether it'll actually be feasible to do this, I don't know) 18:24:27 This will be the first time I've tried to split the shell from the kernel. 18:24:58 ah, sounds like my knid of forth :) 18:25:16 personal political agenda -- don't use #import, use instead #ifndef/#include/#endif <-- precisely the type of thing that #import is designed *SPECIFICALLY* to avoid. 18:25:21 Well, I wanted to be able to write SDL, console, or X11 applications with it. 18:25:24 What exactly is the political agenda behind that? 18:26:22 Klaw: He feels that Objective-C is somehow an inferior language, and that one shouldn't use it for anything at all, anywhere, for any reason. So, as far as I can tell, to discourage portability, he actively advocates against using #import. 18:26:34 You have to admit, that kind of logic is awfully Microsoftian. 18:27:04 #import being an objective-c call? 18:27:38 Klaw: Yes. Defined as per the Objective-C language specification specifically as a replacement for #include (#import is a smart #include -- it won't include a file it knows has already been included). 18:28:36 Do many non-Mac people use objective-c? 18:30:06 bound or jacobs ladder 18:30:16 i just can't decide 18:30:51 i understand a desire to keep away from import -- require_once /include_once being the PHP equivelent 18:31:03 eww, bad spelling 18:31:06 equivilent 18:31:18 yeah third time is a charm.. 18:31:22 yasam: Not a whole lot. 18:31:59 Klaw: I don't understand any reason for it, personally. 18:32:04 Klaw: It makes no sense. 18:32:37 kc5: I'm going to argue for the sake of arguing and say #require is a much more sensible name for that functionality 18:32:44 holy grap i am slow with dvorak 18:33:13 arke: I start off slow, but I speed up to a moderate, usable speed with a few days of practice. 18:33:27 I could go faster if I really concentrated on it, but Dvorak isn't used for speed for me. 18:33:33 I use it for wrist comfort. 18:35:04 this is like whem i first learned typing 18:36:27 :) 18:36:48 In fact, my wrists are starting to hurt again, so I might change back to Dvorak. 18:38:03 ctrl+shift for me 18:38:06 :) 18:38:15 :P :D 18:38:25 Not for me; I use Linux, not XP. 18:39:09 im trying to find my smileys again 18:39:12 bbl 18:39:42 Hehe 18:41:23 hmm...I wonder what has happened in the NBTV hobby since I last checked. 18:43:41 Would it be feasible to create a forth in the same vain as Sargeants? 3 instruction forth but where the target is a process one thread of which is a loop accpeting atleast peak, poke, and jump instructions via IPC with the development environment? 18:45:04 Possible, I suppose, but it'd be horrendously slow. 18:47:06 but fun tho ;) 18:48:44 I'd be more interested in building a virtual machine implementation based around a MISC, and trying to do run-time code re-optimization and compilation to make it go faster. 18:48:55 I think that'd be a fun project to try some day. 18:49:36 yes, and quite a lot of journal papers with good ideas 18:50:51 Would it be feasible to create a forth in the same vain as Sargeants? 3 instruction forth but where the target is a process one thread of which is a loop accpeting atleast peak, poke, and jump instructions via IPC with the development environment? 18:50:52 what's something i can try make in forth to learn about it some more 18:51:09 what do you mean? 18:51:49 i dunno 18:51:52 heh 18:52:07 njd: A MISC chip emulator, then try to write a Forth for that MISC chip. 18:52:39 Either F21, X18, or even a Steamer 16. Steamer16 is a cool chip with only 8 instructions, so writing an emulator for it in Forth would be cake. 18:52:44 i guess i'd have to start on finding out what a misc chip is first 18:52:44 (well, F21 is pretty doggone simple too) 18:53:06 I have a URL for you re: Chuck's X18 chip. Just a second. 18:53:27 njd: how simple do you want? 18:53:55 well i know the basics i guess 18:54:32 http://www.ultratechnology.com/f21cpu.html#cpu 18:54:47 sweet 18:54:48 thanks 18:54:50 That gives some of the most complete details of a MISC I've seen. Also this one: 18:55:48 http://www.stringtuner.com/myron.plichota/index.htm 18:56:22 The Steamer16 is the ultimate in MISC simplicity. It's so simple, and yet, so powerful -- it can easily compete with an Intel 80386 with an identical clock. 18:56:40 brb -- nature is calling. 18:56:42 I cant think fo anything simple and interesting wihtout graphics. 20 questions? 18:57:38 yasam: Nor I. Though some adventure and/or rogue-like games and astronomical software come to mind. :) 18:57:44 brb 18:59:00 yasam: chess? go? radio demodulation? 18:59:41 arke: read monitor.mag in http://www.eskimo.com/~pygmy/3ins4th.zip 19:00:06 Radio demodulation is anything but easy. :) 19:01:58 i should make an xml parser in forth 19:02:00 sounds hard 19:02:03 to me anyway heh 19:04:44 Depends on how you think of it. 19:04:50 is anyone here William Tanskley? 19:05:05 yasam: No, but I am a very close friend of his. I communicate with him almost daily. 19:05:08 Why? 19:05:25 (and I see him about once a month too) 19:05:44 I (too?) are interested in writing a roguelike in forth 19:06:11 Well, I'm not a fan of rogue-likes, really. I can never survive long enough to enjoy the game. 19:06:17 Either that, or the game gets too repetitive for me. 19:06:51 yes, so someone needs to make a better one ;) 19:07:11 Heh :) 19:07:17 roguelike = rpg ? 19:07:30 njd: It is an RPG, but not all RPGs are rogue-like. 19:07:39 oh right 19:08:49 I have only actually played rogue and a bit of moria, so I am not a fanatic 19:11:41 Billy can't live without his daily dose of PernAngband (or whatever its modern equivalent is called). 19:15:37 yasam: can you semd it 2 me? 19:18:21 arke: via IRC? if so I dont know how. (its a small download) 19:20:16 hrm, nevermind then, ill download it 19:20:25 what is it 19:20:26 ? 19:20:46 --- join: jstahuma1 (~justahuma@pcp053555pcs.brlngt01.nj.comcast.net) joined #forth 19:21:18 --- quit: kc5tja (Remote closed the connection) 19:21:37 huh? 19:21:46 --- join: i440R___________ (I440r@sdn-ap-007txhousP0246.dialsprint.net) joined #forth 19:22:13 --- nick: i440R___________ -> I440r 19:23:04 wait, thr url may be wrong 19:23:13 oh no it isnt 19:25:23 hrm interesting... 19:26:24 could someone recommend good online forth beginner materials? 19:26:57 jstahuma1 what os are you in mostly ? 19:29:01 *bsd 19:29:10 and linux 19:29:41 i like colorforth as an idea 19:30:19 i guess I could try running colorforth in an emulator 19:31:56 Xcolorforth works at least somewhat 19:32:50 jstahumal: getting usedd to the keyboard is hard ..... 19:33:01 do you code assembler on x86 ? 19:33:07 this is a valid question... heh 19:33:17 I DO!!!!!!! :) 19:33:27 you could try getting fprimer.zip but thats geared towards a dos compiler called FPC 19:33:31 but the info in there is mostly good 19:33:59 * arke is trying to get used to dvorak 19:34:00 i wont give any plugs for any linux compilers other than my own because im diametrically opposed to teh ans forth standard and all forths coded in c 19:34:05 mine being neither :) 19:34:16 isforth.clss.net - but thers no documentation for mine yet :P 19:34:21 :) 19:34:58 I440r: my binary spitter is gonna be written in C :) 19:35:41 bleh :P 19:35:45 do it in forth 19:35:58 heh, i should :) 19:36:11 which portable forth should i use? 19:36:28 --- join: Herkamire (~jason@h000094d30ba2.ne.client2.attbi.com) joined #forth 19:36:36 * arke is typing qwerty on a dvorak :) 19:39:03 crap 19:39:28 I think architecture knowledge is a requirement for learning forth, just like asm? 19:39:34 jstahuma1 do you code assembler ? 19:39:42 I440r: hell no 19:39:46 oh :P 19:39:48 lol 19:39:50 you should learn 19:40:02 i dont think anyoen who cant code assembler can realy knnow coding all that well 19:40:05 I440r: I find C masochistic enough, thank you 19:40:15 how can you be a coder if you dont understand how teh processor works 19:40:21 just my 2c :) 19:40:23 C is massochistic indeed 19:40:46 I440r: actually, i think you can, but its better that way. then again, theres also those who code asm and cant code worth crap either way 19:40:56 I440r: knowing how a processor works doesn't require asm knowledge 19:41:26 people can drive cars without knowing how they work 19:41:28 no but knowing how the processor executes the code you feed it DOES require assembler and without that knowledge you cannot possibly generate efficient code 19:41:38 jstahumal: its quite helpful tho 19:41:41 jstahuma1 not from what ive seen 19:41:47 most people today DONT know how to drive 19:41:52 swing out left to turn rigfht 19:41:56 signal AS you turn 19:41:59 lol 19:42:06 drive 2 miles under or 10 miles over the limit 19:42:12 :) 19:42:18 enter an intersection BEFORE you have a clear path out.... 19:42:22 I440r: I drive twice the speed limit 19:42:43 50 cb a 25 ;rb. vvvvvv brj. S) 19:42:49 erm 19:42:54 damn 19:42:55 many speed limits are artificial because municipalities depend on ticket money 19:43:11 still ln dvorak mode 19:43:33 so what's a good computer architecture material on the web then? 19:43:34 lol i agree 19:45:49 yes and tehy also ILLEGALLY use trafic lights and stop signs to control speed 19:45:56 thats contrary to federal law 19:48:27 ah, but who checks 19:48:36 :) 19:49:00 ever paid a ticket in court? 19:49:22 i had to spend an hour in line, and then another hour and a half in line to pay the ticket 19:49:52 i think there were about 300/400 people in court, and that's just one day's profits. every ticket being around 100 dollars and more 19:50:10 ridiculous 19:50:46 heh 19:52:30 ok, I have to go, nice talking to youse (as we say down here) good luck on your respective forths 19:52:47 jsta: why all the hurry? 19:52:58 --- part: yasam left #forth 19:53:54 XeF4: hurry? 19:54:07 i need help bending gforth to my will 19:54:51 jsta: if the courthouse is overflowing with people paying speeding tickets, there must be some reason everyone speeds 19:56:17 XeF4: like artificially low speed limits? 19:57:15 define artificially low. 25mph populated areas? 19:57:39 usually near a school 19:57:53 XeF4: you think it's my opinion, it's a widely known fact. ask your neighborhood cop about speed limits. 19:58:01 bah. run those damn spoiled bastards over :) 20:03:47 jsta: otoh, higher speed limits encourage people to drive on certain streets and the noise level becomes waay too obnoxious 20:07:28 XeF4: depends on a street 20:07:35 XeF4: and the cars 20:07:49 XeF4: people put loud mufflers on 20:08:18 people will drive whatever they damn well please though 20:08:25 :) 20:08:33 don't forget the turbulence in itself is quite noisy 20:10:58 so what a good computer architecture resource? 20:11:32 not seen any good overall sites, but there are plenty on specific architectures 20:12:42 best thing is to read a tutorial, try and try again, and annoy people on irc with your questions until you get good at it 20:12:58 PPC, i386, MIPS, Alpha all have reasonable explanations in their programmers' reference manuals 20:14:21 MIPS stuff can be found on ultratechnology.com 20:14:23 so Intel's stuff is good then? 20:15:06 intel's processors are overcomplicated hodgepodges but their manuals do a reasonable job of explaining how they work 20:15:43 well, most processors are overcomplicated 20:16:32 yeah, but recent efforts by Intel really are ahead of the pack in that regard 20:21:05 when you decide to support everything back to your original processor 20:24:47 i need to make a jump/call table in gforth, help?? 20:25:20 arke: you know how to make a table of 32-bit values in gforth, yes? 20:25:31 arke: so just put XTs into the table and EXECUTE them 20:25:39 hrm??L 20:29:11 create jmptable slots cells allot 20:30:06 : setjmp ( u xt -- ) swap cells jumptable + ! ; 20:30:46 : jmpslot ( i*x u -- j*x ) cells jmptable + execute ; 20:31:02 there you have it 20:31:17 : jmpslot ( i*x u -- j*x ) cells jmptable + @ execute ; 20:31:29 sorry, typo 20:31:46 erm 20:31:57 so 20:32:01 you can make the table with elements in it like so: create jmptable ' myfunc , ' myfunc2 , etc 20:32:13 yeah 20:32:30 thats what i was about to ask, if to use ' 20:33:02 wwwwaaaaaiiiiitttt 20:33:15 oj 20:33:27 nevermind, forgetting what cells _really_ does :) 20:33:45 cells is usually: : cels 4 * ; 20:36:22 yeah 20:36:26 or 2 * :) 20:36:32 grm 20:36:33 hrm 20:36:47 : :) ." :)" ; 20:39:10 what do the i*x and j*x do? 20:39:44 the perentheseis enclose a comment. 20:40:01 by the i*x and j*x he means that anything could happen to the stack 20:40:14 (depending on what word gets called) 20:40:15 the code doesnt seem to use those at all. where did you get this code 20:40:27 oooh :) 20:40:31 --- join: gilbertdeb (~gilbert@fl-nked-ubr2-c3a-37.miamfl.adelphia.net) joined #forth 20:40:41 wb gilbertdeb 20:40:49 oh i get it 20:41:03 thanks 20:41:03 the i*x and j*x are the parameters on the stack being passsed to the word being vectored to 20:41:05 duh 20:41:19 its DUMB to stack comment them in a word that doesnt actually USE them 20:41:42 the stack comment belongs on the word being vectored to 20:41:48 NOT on these words 20:42:06 I440r: shutup 20:43:09 stack comments show the words effect on the stack. jmpslot has an unknown effect on the stack, so he wrote a stack comment saying so. 20:43:17 :) 20:50:07 --- join: ez4 (~ez4@pcp01518726pcs.reding01.pa.comcast.net) joined #forth 20:50:19 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 20:50:20 --- mode: ChanServ set +o kc5tja 20:50:35 Aack! Lost network connectivity for some time. :( 20:50:49 kc5tja!!! 20:50:55 you're back! 20:50:58 :) 20:50:59 Yes 20:51:11 --- join: XeF4_ (~xef4@peptide43.gprs.suomen2g.fi) joined #forth 20:51:15 we're gforth forth buddies now :P 20:51:21 eh? :) 20:51:34 How so? 20:51:40 Are you learning GForth? 20:51:44 im making my forth in gforth :) 20:52:05 which means, i get to annoy all the people on freenode who use gforth! 20:52:08 how fun! 20:52:10 lol 20:52:27 Hey, I'm writing FS/Forth's target compiler in GForth. 20:52:44 I wrote the DOS version of FS/Forth's target compiler in PygmyForth. 20:53:54 erm 20:54:00 but 20:54:10 were still gforth forth buddies tho :) 21:03:30 --- quit: XeF4 (Read error: 110 (Connection timed out)) 21:07:33 --- quit: I440r () 21:10:51 --- join: gilbertbsd (~gilbert@fl-nked-ubr2-c3a-37.miamfl.adelphia.net) joined #forth 21:11:10 gilbertbsd: y0 21:11:24 aloha 21:12:50 --- quit: Herkamire ("goodnight") 21:12:55 whats up? 21:16:33 --- quit: XeF4_ ("pois") 21:17:16 this is up -> http://rss.com.com/2010-1071_3-5070877.html?part=rss&tag=feed&subj=news 21:28:18 --- quit: gilbertdeb (Read error: 110 (Connection timed out)) 21:31:55 * kc5tja is trying to install mplayer on this Linux installation. 21:38:25 debian ? 21:38:30 Slackware 21:38:42 Even if ti was Debian, though, I'd definitely install from source, not packages. 21:38:55 why not? 21:39:01 Two reasons. 21:39:14 1. You always want media players optimized as much as possible for the local hardware. Packages can't offer that. 21:39:22 2. The Debian packages lack win32 codec support. 21:39:56 I d/l all of them from mplayer.com 21:40:20 the only thing I don't get is good .mov support 21:40:33 but for .avi, .wmv, .mpg etc I have no problems 21:41:04 Debian's mplayer packages have always failed me in the past. 21:41:10 * kc5tja has always had to build from source. 21:42:13 --- quit: ez4 () 21:42:20 I guess I got lucky then. 21:42:29 mplayer failed me on redhat 21:42:36 I _hate_ redhat absolutely. 21:51:43 Fuck, now I can't figure out why mplayer is constantly having problems playing movies. 21:51:50 It can't play a single frigging movie that I have. :( 21:54:36 OK, this is bizarre. The command-line sees it JUST FINE, but the GUI-version of mplayer things I have an MGA card for some really *fscked* up reason. 21:55:26 hahaha 21:55:54 I have to configure a device driver specifically for it. 21:55:56 This is retarded. 22:04:44 OK, got everything to work. Not 100% flawlessly, but it plays my videos. That's all I care about. 22:13:38 i use VLC 22:13:45 on mac 22:13:54 was better than mplayer 22:13:59 iirc 22:17:30 --- join: skylan (sjh@vickesh01-4829.tbaytel.net) joined #forth 22:20:26 --- quit: jstahuma1 ("leaving") 22:28:59 --- join: Serg_Penguin (Serg_Pengu@212.34.52.140) joined #forth 22:29:52 hi ! 22:30:13 re 22:30:22 Is VLC open source? 22:30:25 kc5tja: what does "re" mean? 22:30:27 Available for Linux? 22:30:31 arke: Again. 22:30:35 arke: As in, "hello, again." 22:30:56 arke: It's IRC slang for re-hello. 22:31:23 heh ok 22:31:26 :) 22:32:19 i just wrote a rude 'config' to compile IsForth w/ different features set ;) 22:32:33 i'll mail it to i440r if i'll get his addr ;)) 22:33:48 i think its redirect_to_dev_null@nospam.clss.net 22:33:49 :) 22:35:34 viery funny arke 22:35:49 Serg_Penguin he is right here ->> mmanning 22:35:50 Heh 22:36:00 yes, viery funny! 22:47:28 i cut it twice in size, and it's not a limit ;)) 22:50:09 see ; 22:50:09 : compile-only-error 22:50:09 -14 throw ; 22:50:09 latestxt 22:50:09 : ; 22:50:11 ;-hook ?struc POSTPONE EXIT finish-code reveal POSTPONE [ ; 22:50:15 latestxt 22:50:17 interpret/compile ; immediate ok 22:50:31 how does that work? 22:51:06 GForth specific. 22:51:32 : compile-only-error ... ; latestxt puts the execution token of compile-only-error on the data stack. 22:51:48 (latestxt referring to the previous definition) 22:51:58 : ; ... ; latestxt does the same for ;. 22:52:36 interpret/compile ; takes the (xt-interpret-mode xt-compile-mode) pair on the stack, and creates a new dictionary entry that has the indicated behaviors. 22:52:53 GForth provides two code fields for each word: one which is used when interpreting, and one which is used when compiling. 22:53:09 By default, the compile-time action of each word is to compile a subroutine call to its interpret code. 22:53:15 0.0 22:53:26 An immediate word is one which its compile-time and interpret-time actions the same. 22:53:31 jeez 22:53:41 And a compile-only word has its interpret-time behavior set to produce some kind of error. 22:53:54 It's an elegant solution, but I feel it's way overkill. 22:54:17 yes 22:54:22 It introduces a lot of conceptual complexity into the system, all to simplify the compiler's inner loop (which is written and used only once in the system). 22:54:36 It eliminates the check to see if a word is immediate or not. 22:56:01 what are some good defs for : , ; and immediate 22:57:06 Those are awfully platform dependent. 22:57:13 But, for FS/Forth in particular, 22:57:30 : : name bind \\] ; 22:58:12 where \\] is the compiler proper (the \\ is a convention I use; all 'compiler' words have \\ prepended to them in GForth -- it enables a clean, extensible way to arbitrarily add new compiler words at any time, without me having to hack the original source) 22:58:47 : \\] BEGIN name CompilerWord? IF execute ELSE ForthWord? IF compile, ELSE number, THEN THEN AGAIN ; 22:59:17 name is basically: : name 32 word count stdform ; 22:59:38 where stdform is a word that converts an arbitrary string into the standard form a name takes in the dictionary lookup tables. 22:59:49 : name bind \\] ; 23:00:01 : name 32 word count stdform ; 23:00:05 this is waaaaay over my head.... 23:00:07 a recursive definition? ;) 23:00:12 gilbertbsd: No. 23:00:20 gilbertbsd: I'm just giving their equivalent definitions. 23:00:24 ah. 23:00:37 thought I saw ':' defined interms of name 23:00:38 I should have used H:, which is the host's original version : (Host-:). 23:00:46 which is itself defined in terms of ':' 23:00:53 gilbertbsd: Look again. : : name bind \\] ; 23:00:53 whats a simple way for those 3? 23:01:04 arke: There is no simple way. 23:01:07 That is simple. 23:01:17 err 23:01:25 What you fail to see is that the whole colon compiler for my system fits on a single 16-line page of text. 23:01:26 : : name bind \\] ; : name 32 word count stdform; 23:01:36 gilbertbsd: Dude, stop being so literal. 23:01:40 :D 23:01:57 just trying to help clarify for arke here. 23:01:59 brb 23:02:09 i still dont get it 23:03:02 write it then. 23:03:58 this might help : http://www.eforth.com.tw/academy/library/eforth.htm 23:04:03 in a very round about sort of way. 23:04:08 anyway, I've gotta Zzzzzz 23:04:10 --- part: gilbertbsd left #forth 23:04:19 : : here compile >r new-address ; 23:05:12 : ; r> $(ret-opcode) ; 23:05:13 baaah 23:05:22 * arke is away: night 23:09:49 back 23:10:06 * kc5tja laughs 23:10:10 It's all so very, very simple. 23:10:15 And yet, so few ever get it. 23:15:09 --- quit: arke (Read error: 60 (Operation timed out)) 23:21:50 OK, I really like this zooming user interface concept. http://humane.sourceforge.net/, click on "Zooming User Interface" link in the News section. 23:21:57 Requires Macromedia Flash player. 23:22:05 WARNING: Takes a while to load (for some reason). 23:22:10 But it will eventually load, and it does work. 23:25:23 * Serg_Penguin hates flash for huge traffic, CPU load and non-viewable as text 23:39:11 Uhhhhh...... 23:39:20 Yeah. 23:39:21 And? 23:40:52 Just give the site a try. Like I said, it's a demonstration of a moderately well done zooming user interface. To date, it's one of the best I've ever seen, that's for sure. 23:41:04 And yes, ZUIs depend on a graphical screen to view. 23:41:08 So why not use Flash for this? 23:42:48 Obviously, in a real ZUI, the graphical elements that comprise text on the screen will be more efficiently represented (usually as display lists), and hence, easily searchable, copy-n-paste capable, and more. 23:48:51 url ? 23:49:10 I already posted it -- http://humane.sourceforge.net/ 23:49:25 In the "News" section, click on the link pointing to the zooming user interface demo. 23:49:43 Then basically follow the instructions on the page that comes up. 23:50:00 (Since ZUIs are used very differently from traditional UIs, it's important to familiarize yourself with the basic controls first) 23:52:04 8 MB ? hell no ! 23:53:02 Eek. 23:53:09 That would explain why it took so long to load. :/ 23:53:48 I'll send Jef an e-mail on the size issue, and see if he can't have a lighter-weight version produced. 23:59:59 --- log: ended forth/03.09.21