00:00:00 --- log: started forth/06.04.08 00:07:55 --- join: amca (n=plump@as-bri-2-38.ozonline.com.au) joined #forth 00:29:43 hiho anybody awake? 00:33:45 --- quit: madgarden (Read error: 104 (Connection reset by peer)) 00:50:39 --- join: Cheery (i=Henri@a81-197-45-47.elisa-laajakaista.fi) joined #forth 00:52:24 hi 01:04:46 Morning, virl, others. 01:10:22 teh hies 01:16:30 tee heiss 01:19:59 I'm too lazy to finish my minimal xell implementation, I hate that, I also hate that a jump instruction is out of range for short jumps. 01:21:05 --- join: Intoxicator (n=l@159.134.145.204) joined #forth 01:21:20 Hm? 01:21:56 high 01:22:12 I see. 01:23:05 that's a useful thing to do 01:23:44 eh, what? 01:27:03 no long jumps available? 01:28:24 well, I don't know how to say nasm that it should produce long jumps. 01:29:06 I think it does that automatically if the jump is long enough. And it's called a "near" jump with x86 terminology. 01:29:24 I think "jmp near foo" might do it, but check the NASM reference. 01:29:32 try to append :32 to the target 01:44:46 jmp long 01:45:02 everything else gets folded to "as small as possible" 02:02:31 --- quit: Raystm2 (Read error: 110 (Connection timed out)) 02:16:55 There isn't a single book about Forth on http://www.freebookzone.com 02:48:32 --- join: ravenEx (i=ravenEx@87.252.224.230) joined #forth 02:55:07 --- quit: ravenEx ("IGNORANCE IS STRENGTH") 02:55:12 --- join: ravenEx (i=ravenEx@VPN-224-230.aichyna.com) joined #forth 03:07:30 --- quit: ravenEx (Read error: 131 (Connection reset by peer)) 03:08:36 --- join: ravenEx (i=ravenEx@VPN-224-230.aichyna.com) joined #forth 04:01:17 --- quit: segher (Read error: 104 (Connection reset by peer)) 04:04:48 --- join: amca_ (n=plump@as-bri-4-1-212.ozonline.com.au) joined #forth 04:05:42 --- quit: amca (Read error: 113 (No route to host)) 04:08:33 --- join: segher (n=segher@dslb-084-056-175-064.pools.arcor-ip.net) joined #forth 04:20:58 --- join: Raystm2 (n=Raystm2@adsl-68-93-113-16.dsl.rcsntx.swbell.net) joined #forth 04:25:49 --- join: JasonWoof (n=jason@pdpc/supporter/student/Herkamire) joined #forth 04:25:50 --- mode: ChanServ set +o JasonWoof 04:51:53 --- join: PoppaVic (n=pete@0-2pool236-176.nas22.chicago4.il.us.da.qwest.net) joined #forth 05:15:36 --- quit: amca_ ("Farewell") 05:42:49 ravenEx: war is peace 05:43:29 ravenEx: freedom is slavery 05:51:42 i know it 05:52:28 actually i live in a country of such type( 05:55:42 --- join: thinkinginbinary (n=tom@phoenix.thomastuttle.mooo.com) joined #forth 05:56:13 --- join: Raystm2_ (n=Raystm2@adsl-69-149-52-86.dsl.rcsntx.swbell.net) joined #forth 06:08:53 --- join: Alterego (n=Alterego@88.202.136.178) joined #forth 06:12:07 --- quit: Raystm2 (Read error: 110 (Connection timed out)) 06:17:48 --- join: neceve (n=Clau@unaffiliated/neceve) joined #forth 06:19:26 --- quit: PoppaVic ("Pulls the pin...") 06:37:12 --- join: PoppaVic (n=pete@0-1pool46-117.nas30.chicago4.il.us.da.qwest.net) joined #forth 06:42:40 --- quit: neceve ("Bye people, I'm leaving") 06:43:58 --- join: neceve (n=Clau@unaffiliated/neceve) joined #forth 07:03:44 --- part: Intoxicator left #forth 07:31:59 --- join: nballen (n=nballen@adsl-69-109-11-176.dsl.renocs.pacbell.net) joined #forth 07:33:51 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 07:34:03 hi tathi 07:34:18 hi 07:34:38 I've been flogging sizes and types... 07:34:58 I'm not much for floggings, myself ;) 07:35:11 ..working up to the VM and bytecode 07:35:50 http://rafb.net/paste/results/WitLiy97.html 07:35:54 see above the main() 07:35:58 --- quit: nballen (Client Quit) 07:41:06 My feeling is: we define most all you need to live, and provide handling, and build from there. 07:42:08 Where I am currently showing bitfields in generic[] and Tdatum, I am beginning to believe we need a nicely segregated set of handler-funcs. 07:43:37 You will notice I do not deal with the same align/pad issues C can invoke. I see no way to learn or permit them. Worse, I doubt they SHOULD be allowed. 07:45:04 what's your project? programming language? 07:45:36 Not fully, but it needs a core, yeah 07:45:37 morning all 07:45:43 hi virl 07:46:09 how can i learn more about it? 07:46:23 ravenEx: I didn't want to force Gforth on the world, and FICL 4+ was just this side of busted 07:46:28 I'm today playing with my minimal version of xell, pfeww, x86 assembler is disgusting. 07:47:13 ravenEx: well, I created #Metabuilder here and own it. THe prob is I know we need a shell, expect C, and want to replace Make and sh in the end. 07:47:53 virl: it's amazing he insights and then obfuscations that pop-up to make you scream. 07:48:29 I don't understand 07:49:04 virl: insights occur all the time, but it's the limitations or "oh, shit"'s that make you scream 07:49:04 what do you mean? 07:49:46 I knew all the time that x86 assembler is disgusting. 07:49:59 ravenEx: my bottom line is C and posix... And a basic Makefile to kick-off the game. 07:50:14 any assembler is disgusting. 07:50:23 well, not really. 07:50:30 yes, really 07:50:34 no 07:50:40 And, C is just a bandaid 07:50:50 virl: sorry, I will disagree forever. 07:51:10 it's not the first time I code in assembler 07:51:11 NOW, write me something above asm, that is 100% portable - and goes the same place. 07:52:39 that is nearly impossible, to write something in assembler which is portable through different cpus. 07:53:39 not true 07:54:02 lisp does it, c-- is said to do it, assorted other pseudo-compilers do it. 07:54:28 hell gcc and autoshit together manage to compile gcc 07:54:35 I meant binary portability, no fucking emulators, raw binary code on the fucking machine. 07:55:11 virl: nothing like skipping a few steps 07:55:13 compiling gcc with gcc isn't a portable way, you have a package for each fucking cpu. 07:55:47 virl: you keep getting foul when folks point out minor issues that cascade to major issues. 07:56:10 I'm not getting foul 07:56:32 "fucking" is foul - I use it for emphasis or not at all. 07:57:36 so, I suggest: point out why anyone would use ASM - I already know - and then try to get above it to REACH it, and then get above that. 07:57:46 PoppaVic: An assembler for an 8-bit RISC CPU isn't disgusting 07:58:00 ack thinkinginbinary, that was I meant 07:58:33 PoppaVic, virl: x86 is just particularly obfuscated 07:58:48 I try not to think of what the heck object (.o) code contains, and concentrate on writing code and structures. 07:59:15 In-RAM is all "structures". 07:59:30 thinkinginbinary, x86 would be nice when it wouldn't have such a big instruction set. 07:59:39 oh, please 07:59:47 PoppaVic: I would agree with that--it's better to not have to manipulate machine code. Especially for portability. 07:59:53 They used to say that about the Z80 vs 8080 07:59:53 virl: Yeah. 08:00:09 PoppaVic: Say what about the Z80 vs. 8080? 08:00:44 brb 08:00:58 they used to bitch that the Z80 was "verbose" or "slow" versus the 8080 08:01:03 thinkinginbinary, I think also it's a pita to write a program with opcodes because of it's different meanings for every situation. 08:02:11 right.. translate or filter or interpret... anything is better than wedding yourself. 08:02:56 including, apparently, writing actual code 08:02:58 whatever this should means 08:03:09 whatever.. 08:03:35 PoppaVic: Oh. 08:03:47 I suppose if everyone writes enough kernel-modules we are golden. 08:04:17 PoppaVic: Nah, my point is subtly different. I'm not talking about how high-level the instructions are, or how many instructions it takes to do something. I'm talking about how complex the actual machine representation of instructions is. 08:04:48 is that the "real machine" or the vm or some variant? 08:04:54 PoppaVic: The instruction set for things like the RCA 1802 or the 8-bit PIC's is pretty much one byte = one instruction 08:04:57 PoppaVic: Real machine 08:05:02 PoppaVic: Like you were talking about x86 machine code, right? 08:05:40 ok, then yer talking about asm - and, no - virl was. The prob is you need a level ABOVE asm that isn't strapped to the bed. 08:06:29 simple instruction set, that's what is fine, hell I don't know how complex it would be to write an assembler for this fucking arch 08:06:31 PoppaVic: Oh, yeah. He did mention x86. What platform are you on? 08:07:08 I'm now using G4 macosx, used to use x86 debian. 08:07:19 PoppaVic: I imagined C was that level above the machine, but it does have issues. What do you think about the whole "Does a primitive type (e.g. long) have a required size (e.g. 64bits), or does it depend on architecture?" 08:07:45 PoppaVic: C doesn't have strict requirements. Java does. Some people don't like Java for that, but I frankly consider it a good thing to *know* the size of the variable I'm declaring. 08:07:54 Mostly, I think there is a complete lack of reporting/commo 08:07:56 PoppaVic: Is the PowerPC instruction set any simpler? 08:08:09 PoppaVic: "reporting/commo"? Reporting about what? 08:08:14 I have no idea, I won't write asm 08:08:52 the CPU is one issue, the platform is another; asm needs to know both, and doesn't report up the chain. 08:09:04 I do writing asm, it's fun, but on x86 it's sometimes a pain. 08:09:35 asm is a pita. Only surpassed by futher guessing in C 08:10:01 thinkinginbinary: the instruction layout for PPC is fairly clean 08:10:13 that asm is a pita, is because of the fucking architecture which produces such a pita. so the fucking cpu and the fucking company. 08:10:21 Somewhere along the line, shit needs to report basics to callers. 08:10:22 the 64-bit superset is a bit more annoying, but it's still fixed 32-bit instruction words 08:10:36 virl: yer just twisted and bitter 08:10:52 PoppaVic, what? 08:11:01 PoppaVic: So you're saying, for example, asm (or the cpu, or whatever) needs to report, for example, the register sizes to higher-level languages so they can choose good variable sizes? 08:11:03 Exactly what I saif 08:11:14 PoppaVic: What "basics" would you want to report, and how? 08:11:33 thinkinginbinary: or there needs to be a WAY to learn, yes - or recommended, etc. 08:12:05 PoppaVic: I do find programming stuff in C can be a PITA. Instead of ASM, where I know what I'm doing but it's just drudgery, I sorta know what I'm doing, but, for example, there's no way to say "make this variable as large as it can without requiring software-extended multiplication". 08:12:34 Everyone wants to pretend there is no OS, or there is no ASM, or there is no Compiler or there is no Interpreter. And this doesn't cover devices or files 08:12:36 PoppaVic: That can sorta be done with CPUID and a table. 08:12:49 * PoppaVic sighs 08:13:11 As long as folks are happy, I'm easy 08:13:12 PoppaVic: Um, yeah. People want to have a standard interface without worrying about that stuff. But perhaps the standard interface needs to expose a little more about the underlying guts, if only for performance reasons. 08:13:30 expose at least referencial, yes 08:14:31 knowing or not knowing about the guts 08:14:51 well, it depends 08:14:53 PoppaVic: hmm. configure does this to an extent. It can tell you the size of various types, and I think it can (somehow) define types like "u8", "s16", and so on so you can pick the type specifically. But that's for C. 08:15:15 hehe 08:16:18 PoppaVic: Here's a good example. If you need a 16-bit integer, it might be more economical or faster to use a 32-bit integer on a 32-bit system (sometimes using non-"optimal" sizes makes the instructions longer), but on an 8-bit microcontroller, I would want it to only assemble the minimum I needed, i.e. 16 bits. There's no way to do that, AFAIK. 08:17:11 thinkinginbinary: oh, I won't touch autoshit. I may rely on their core-alterations, but I'd never attempt to code in that headspace 08:17:36 PoppaVic: define "core-alterations" and "headspace"? 08:17:44 tathi: stop laughing - these folks can't see the trees 08:17:55 --- join: madgarden (n=madgarde@Toronto-HSE-ppp3712957.sympatico.ca) joined #forth 08:18:06 PoppaVic: I was just amused that he brought up autoconf 08:18:23 PoppaVic: Hey! I don't use autoconf. 08:18:27 which is, AFAICT what you're reacting against in "building" Metabuilder 08:18:31 thinkinginbinary: there are many folks that will spend the years learning autoshit, just to port their noise to the core. And, I have to ask "WHY?" 08:18:43 tathi: sorta, yes. 08:18:54 Then there are people who tak half an hour learning autoconf just to port their noise to the core. :) 08:18:58 PoppaVic: They don't spend years, and they do it because it's the best choice right now, and it's a standard. 08:19:09 * PoppaVic sighs 08:19:20 OK, good luck to all those 08:19:29 PoppaVic: Once you create a better alternative, it'll be good, but right now, it's the best (only, in some cases) choice. 08:19:50 and in a bunch of cases, you can get along without anything 08:19:51 Did I mention that ELF and other platforms can't agree? 08:19:59 PoppaVic: Explain? 08:20:01 tathi: I do in C, often 08:20:15 and then there will be people who learn for decades metabuilder, to port their noise to another platform. well, when you do it wrong that will happen. 08:20:28 virl: true ;-) 08:20:41 thinkinginbinary: try them. The resulting binaries are jsut that: local-binaries 08:21:10 virl: as may be, I don't care to coerce anyone. 08:21:12 PoppaVic: autotools grew, just as metabuilder is, out of the same problems. No software configuration system will be easy to learn, elegant, and comprehensive. 08:21:24 I disagree 08:21:35 PoppaVic: Um, that's why you compiled them. So you can run them on *your* system. If you have two identical systems, and you build binaries on one, they will work on the other. 08:21:41 PoppaVic: It's just a complicated tool to build and understand. 08:21:51 autoshit relies on a LOT of cross-compiling, but not cross-compiling data with reasons. 08:21:52 * tathi agrees with thinkinginbinary on both points 08:22:11 PoppaVic: To put it simply, the hardest part of using one is going from not worrying about portability to worrying about portability. It's hard to understand all the ways in which your program has to adapt. 08:22:22 I agre 08:22:24 PoppaVic, there isn't only autoconf out there, there is also a bunch of other configuration systems, which mostly relie heavily on OOP like scons 08:22:35 hehehehehehehehehaha! 08:22:49 virl: lift the sheets 08:23:10 lift the sheets? what the hell do you mean? 08:23:33 PoppaVic: Um, it DOESN'T cross-compile unless you ASK it to. When I build something, it uses a pentium-m compiler to build a pentium-m binary (CFLAGS="-O2 -march=pentium-m -pipe", for both the compiler and the apps) 08:23:52 Requiring python, Ruby, Perl and whatnot - you've just hit my issues. 08:24:08 thinkinginbinary: and that runs - where? 08:24:42 the #openbios folks had a solid point-of-contention 08:24:57 PoppaVic: on my system, or another pentium-m system with reasonably similar library configuration. But if I said CFLAGS="-mtune=pentium-m", it would run on any x86. 08:25:07 * PoppaVic sighs 08:25:17 PoppaVic: hm? 08:25:19 So did the FIG-forthers, apparently 08:25:21 PoppaVic: There are a few choices (threading library, in some cases; major glibc version) that result in binary incompatibility, but gcc does what you tell it to do. 08:25:29 PoppaVic: huh? 08:25:55 oxygene: folks confusing cpu with platform and libs and a variety of issues 08:26:38 most programs need some strange libs that it runs, so that it's not autoconfs vault. 08:26:47 OK, enough - I give. I have no interest in converting folks. 08:40:06 good morning everyone 08:40:15 hi, crc 08:44:36 crc: hi 09:15:23 --- quit: thinkinginbinary ("leaving") 09:31:23 --- quit: PoppaVic ("Pulls the pin...") 11:00:06 --- quit: ravenEx ("IGNORANCE IS STRENGTH") 11:54:38 --- quit: crc () 12:18:30 --- quit: tathi ("leaving") 12:18:59 --- quit: Alterego (Read error: 110 (Connection timed out)) 12:25:06 --- join: Alterego (n=Alterego@88.202.136.178) joined #forth 12:29:32 --- join: crc (i=crc@pool-70-110-217-72.phil.east.verizon.net) joined #forth 12:45:23 --- nick: Raystm2_ -> Raystm2 13:45:30 --- quit: Cheery (Read error: 104 (Connection reset by peer)) 13:52:34 --- quit: neceve ("Bye people, I'm leaving") 15:18:55 --- quit: slava ("Lost terminal") 18:09:38 --- join: thinkinginbinary (n=tom@phoenix.thomastuttle.mooo.com) joined #forth 18:09:48 Quartus: Ah, it's so PoppaVic-free in here! 18:09:56 Quartus: Smells like smart people! 18:28:56 --- quit: uiuiuiu (Read error: 104 (Connection reset by peer)) 18:34:00 --- join: uiuiuiu (i=ian@dslb-084-056-240-073.pools.arcor-ip.net) joined #forth 18:53:46 --- join: PoppaVic (n=pete@0-2pool198-29.nas30.chicago4.il.us.da.qwest.net) joined #forth 18:55:39 --- quit: madgarden (Read error: 104 (Connection reset by peer)) 18:55:59 --- join: neceve (n=Clau@unaffiliated/neceve) joined #forth 18:56:05 --- quit: Alterego (Read error: 110 (Connection timed out)) 18:56:29 --- join: madgarden (n=madgarde@Toronto-HSE-ppp3712957.sympatico.ca) joined #forth 19:44:23 --- quit: PoppaVic ("Pulls the pin...") 20:39:54 --- quit: neceve (zelazny.freenode.net irc.freenode.net) 20:39:54 --- quit: uiuiuiu (zelazny.freenode.net irc.freenode.net) 20:39:54 --- quit: crc (zelazny.freenode.net irc.freenode.net) 20:39:54 --- quit: virl (zelazny.freenode.net irc.freenode.net) 20:39:55 --- quit: Zymurgy (zelazny.freenode.net irc.freenode.net) 20:39:57 --- quit: Jim7J1AJH (zelazny.freenode.net irc.freenode.net) 20:40:06 --- join: neceve (n=Clau@unaffiliated/neceve) joined #forth 20:40:06 --- join: uiuiuiu (i=ian@dslb-084-056-240-073.pools.arcor-ip.net) joined #forth 20:40:06 --- join: crc (i=crc@pool-70-110-217-72.phil.east.verizon.net) joined #forth 20:40:06 --- join: virl (n=virl@chello062178085149.1.12.vie.surfer.at) joined #forth 20:40:06 --- join: Zymurgy (i=zymurgy@cat.delfax.net) joined #forth 20:40:06 --- join: Jim7J1AJH (n=jim@221x115x224x2.ap221.ftth.ucom.ne.jp) joined #forth 20:58:52 --- quit: thinkinginbinary ("leaving") 23:05:08 --- quit: JasonWoof ("off to bed") 23:59:59 --- log: ended forth/06.04.08