00:00:00 --- log: started forth/06.02.07 00:12:23 --- quit: JasonWoof ("off to bed") 00:38:05 --- join: rsyncx (n=bob@CPE000c41aac435-CM00111ae4f4cc.cpe.net.cable.rogers.com) joined #forth 00:41:36 --- quit: rsyncx (Client Quit) 01:11:13 --- join: Raystm2 (n=Raystm2@adsl-68-95-250-24.dsl.rcsntx.swbell.net) joined #forth 01:25:22 --- quit: yoyofreeman ("Download Gaim: http://gaim.sourceforge.net/") 01:26:49 --- quit: nanstm (Read error: 110 (Connection timed out)) 01:42:09 --- join: yoyofreeman (n=root@219.145.82.49) joined #forth 03:05:29 --- quit: Quartus (Read error: 104 (Connection reset by peer)) 04:12:01 --- quit: yoyofreeman (Read error: 104 (Connection reset by peer)) 05:33:42 --- join: venandocarvarow (n=venandoc@h062040252005.plc.cm.kabsi.at) joined #forth 05:38:05 --- join: PoppaVic (n=pete@0-2pool238-25.nas24.chicago4.il.us.da.qwest.net) joined #forth 05:49:57 --- quit: venandocarvarow (Read error: 104 (Connection reset by peer)) 06:08:16 --- join: Ray_work (i=Raystm2@adsl-68-93-99-178.dsl.rcsntx.swbell.net) joined #forth 06:14:42 --- nick: Raystm2 -> nanstm 06:34:48 --- quit: Ray_work ("User pushed the X - because it's Xtra, baby") 06:43:27 --- join: venandocarvarow (n=venandoc@h062040252005.plc.cm.kabsi.at) joined #forth 06:50:27 --- join: ccfg_ (n=ccfg@dsl-roigw3-feb0dc00-66.dhcp.inet.fi) joined #forth 06:56:50 --- quit: ccfg (Read error: 60 (Operation timed out)) 07:57:24 --- join: rehges (n=segher@blueice4n1.de.ibm.com) joined #forth 08:01:17 --- quit: crc_ (Read error: 110 (Connection timed out)) 08:25:36 --- join: Quartus (n=trailer@CPE0001023f6e4f-CM013349902843.cpe.net.cable.rogers.com) joined #forth 08:43:08 --- join: TheBlueWizard (i=TheBlueW@ts001d0551.wdc-dc.xod.concentric.net) joined #forth 08:55:41 --- quit: ccfg_ (Read error: 60 (Operation timed out)) 08:56:51 --- join: ccfg (n=ccfg@dsl-roigw3-feb0dc00-66.dhcp.inet.fi) joined #forth 09:22:26 --- quit: PoppaVic ("Pulls the pin...") 09:36:50 --- quit: warpzero ("Lost terminal") 09:37:40 --- join: warpzero (n=warpzero@wza.us) joined #forth 10:09:31 --- quit: Cheery ("Leaving") 10:11:27 --- part: venandocarvarow left #forth 10:31:13 --- join: snowrichard (n=richard@adsl-69-155-177-154.dsl.lgvwtx.swbell.net) joined #forth 10:32:15 hi 10:32:25 hiya Snoopy42 10:32:31 oops...hi snowrichard 10:32:47 how are you? 10:32:47 --- join: thinkinginbinary (n=tom@pool-68-163-216-210.bos.east.verizon.net) joined #forth 10:32:54 Quartus: Guess what? 10:34:02 Quartus: The platform I'm working on uses 12-bit RAM addresses and 21-bit program addresses, so I have 4 extra bits in a thread address and 3 extra bits in a machine code address. (Of course, the first 3 bits must distinguish the 2 or 3 bytes as one type or the other.) 10:34:04 doing ok so far...had a surgery a while ago 10:34:22 Quartus: and, luckily, program addresses are even aligned, like you hoped. 10:43:00 --- quit: thinkinginbinary ("leaving") 11:06:24 --- join: osh (i=74081307@Orleans-ppp42704.sympatico.ca) joined #forth 11:18:33 --- part: osh left #forth 11:21:45 --- join: crc_ (i=crc@pool-151-197-16-193.phil.east.verizon.net) joined #forth 11:27:23 --- join: JasonWoof (n=jason@pdpc/supporter/student/Herkamire) joined #forth 11:27:23 --- mode: ChanServ set +o JasonWoof 11:41:47 Hey. 11:42:10 --- join: crc2 (i=crc@111-pool1.ras04.jfk01.dial.cogentco.com) joined #forth 11:52:32 hey :) 11:52:59 hello and welcome to day 12 11:55:13 --- quit: crc_ (Read error: 110 (Connection timed out)) 11:55:18 --- nick: crc2 -> crc_ 11:59:29 --- join: crc__ (i=crc@pool-151-197-232-241.phil.east.verizon.net) joined #forth 12:00:39 --- quit: rehges () 12:06:31 --- quit: crc_ (Read error: 104 (Connection reset by peer)) 12:06:36 --- nick: crc__ -> crc_ 12:09:22 --- join: Cheery (i=Henri@a81-197-18-99.elisa-laajakaista.fi) joined #forth 12:40:47 --- quit: Snoopy42 (Read error: 145 (Connection timed out)) 12:45:02 --- join: Snoopy42 (i=snoopy_1@dslb-084-058-137-114.pools.arcor-ip.net) joined #forth 12:45:20 + 12:47:31 +? 12:49:45 --- quit: TheBlueWizard (Connection timed out) 12:50:18 sry, disregard that... 12:50:22 ok 12:51:05 --- quit: snowrichard ("Leaving") 13:31:13 --- quit: uiuiuiu (Remote closed the connection) 13:31:17 --- join: uiuiuiu (i=ian@dslb-084-056-211-169.pools.arcor-ip.net) joined #forth 13:35:41 --- join: snowrichard (n=richard@adsl-69-155-177-154.dsl.lgvwtx.swbell.net) joined #forth 13:35:56 --- quit: snowrichard (Read error: 104 (Connection reset by peer)) 13:39:18 --- join: Lars_G (n=lars@unaffiliated/lars-g/x-000001) joined #forth 13:45:31 --- join: snowrichard (n=richard@adsl-69-155-177-154.dsl.lgvwtx.swbell.net) joined #forth 13:50:05 --- quit: snowrichard (Client Quit) 14:01:14 --- join: cp (n=cp@m26s12.vlinux.de) joined #forth 14:17:21 Is there no Forth binding for Qt? 14:17:30 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 14:17:53 Lars_G: I'm unaware of any 14:18:26 sad. 14:18:27 thanks crc 14:18:59 --- quit: madwork ("?OUT OF DATA ERROR") 14:19:46 --- join: madwork (n=foo@derby.metrics.com) joined #forth 14:31:51 Have you thought about building one? 14:32:26 I ruled it out 14:32:35 Lars_G, I mean -- he being the one with the need. 14:32:40 ahh 14:33:10 Maybe one day. 14:33:26 It'd be a fun project. 14:37:06 qt is written in c++, so writing a binding would be a pai 14:37:07 pain 14:38:21 nod 14:38:37 Unless I base on a C++ based compiler. 14:38:58 or, instead of a bind I look for a way to link compiled forth objects to it... 14:39:08 why qt? 14:50:12 I'm interested in Qt, it allows to create stuff very quickly, specially in languages like ruby. 14:50:19 but I wanted forth, to be able to compile it :) 14:50:38 what is your target platform? 14:51:23 All that Qt handles. 14:51:30 Linux, OS X, Windows 14:51:51 I'm looking for alternatives on portability, with less coding effort than C 14:56:54 So you'd need a Forth with Qt bindings for all the same platforms. 15:00:06 Quartus: Don't try to sell me one yet ;) 15:00:25 --- join: crc__ (i=crc@pool-70-16-155-77.phil.east.verizon.net) joined #forth 15:00:27 I know you could do it, but there'd be no fun in it for me :) 15:00:35 Maybe I should try to make my own compiler someday 15:00:49 That is, if I can ever buy a copy of the dragon book without it getting lost in the mail 15:02:19 Yes I'll code a forth compiler someday. 15:02:39 i've decided i like cocoa better than gtk, qt or swing 15:02:43 Quartus: Sorry if I offended you, it was a faux pass. 15:02:55 slava: Cocoa is very good, but very platform restricted :) 15:03:01 :P 15:03:23 slava: I can skip windows, i don't plan to code commercial stuff right now only open source stuff... but I want at least to share the love with Linux and OS X 15:03:33 eh? I was away from the keyboard. I don't have any plans to create such a monstrosity, Lars. 15:03:41 Quartus: Great :D 15:03:53 Maybe I could create a Forth module for GCC 15:04:07 that way, I can compile to intermediate code, and link with Qt or anything else I want 15:04:14 it'd be hard but not impossible 15:04:39 ... there is one already isn't there? 15:04:55 sigh 15:04:58 why do you want a gcc backend? many forths compile to native code directly 15:06:42 Because then I could use the rest of gcc infrastructure to link and cross compile 15:06:47 btw it'd be a frontend not backend ;) 15:08:30 Altough bigForth shows some promise at first sight 15:10:50 Ah no, it doesn't 15:11:01 And yes it seems I'll drop support for Windows whathever route I choose. 15:11:20 what features are you looking for in particular? 15:11:53 I want something I can code in, that people can natively run on OS X and Linux without breaking my back coding :) 15:12:38 Well, focus on what doesn't exist, that way you can stall ever getting started for as long as you require. 15:13:05 factor runs on linux and os x 15:13:24 Hahaha 15:13:28 slava: Factor? 15:13:51 My other only choice is C++ and Java so far. :'( 15:14:04 and it has a gui toolkit, and lower level x11 and cocoa bindings 15:14:11 slava: Interesting. 15:14:17 or you can write web apps using the httpd 15:14:29 slava: Can you give me an url? I guess writting "factor" in google is a bad idea 15:14:35 http://factorcode.org 15:14:39 its my project 15:14:58 AH that thing. let me see it 15:15:09 I tought it was pre pre pre pre pre alpha 15:15:17 --- quit: crc_ (Read error: 101 (Network is unreachable)) 15:16:15 And it's BSD licensed (or similar) pretty nice. I'll check it out 15:17:36 How long have you been at it? 15:17:52 i started in september 2003 15:17:55 Have you gained any adepts yet? do you have a following? will you be considered a god like larry wall someday? 15:18:21 there's a handful of contributors 15:20:00 --- quit: Cheery ("Leaving") 15:20:13 --- nick: crc__ -> crc_ 15:24:48 --- quit: saon (Read error: 104 (Connection reset by peer)) 15:25:32 --- join: saon (i=1000@unaffiliated/saon) joined #forth 15:28:07 --- quit: saon (Read error: 104 (Connection reset by peer)) 15:28:20 slava: Eh why is your language "bootstraped" ?? 15:31:03 because this way is cleaner 15:31:35 .... 15:31:39 what does the bootstrap do? 15:32:05 the first stage runs inside an existing factor instance, makes a bootstrap image from sources 15:32:18 the second stage compiles definitions in the bootstrap image to native code, and produces a complete image 15:32:26 Hmmm ok 15:32:47 --- quit: neceve ("Leaving") 15:34:48 --- join: saon (i=1000@unaffiliated/saon) joined #forth 15:36:22 So your basic factor is in a way like gforth, you only have a core and the rest in factor itself, but then the difference is everything else is compiled to native code instead before beign used? 15:36:44 slava: But then, if it comes in source, either C or C++ or Factor, why do you have different bootstraps for each platform? 15:37:53 the bootstrap image includes the compiler backend for a particular platform 15:38:04 the image doens't contain source, it has serialized objects 15:38:23 a bootstrap image is just that, a working image also has machine code 15:38:55 you build bootstrap images from source, but you need a working image to run the bootstrapper in. the parser and most of the object system is in factor, not C 15:40:02 It's a little late so there is something here I'm missing, but I'll sure check it out latter. 15:40:05 Lars_G: think if it this way: gcc is not written in assembly. you need an existing C compiler to compile gcc 15:40:06 for now I'm bailing out 15:40:44 Ok but what gets me is that then the bootstrap image is both the compiler source and serialized libraries in a single object..... odd. 15:40:46 Not bad... 15:40:50 not bad at all but odd. 15:41:12 the compiler 'source' is also serialized objects 15:41:14 Maybe this would make it a little more portable. How big is Factor? I would love to see if it's portable to microcontrollers 15:41:34 the C runtime is 100kb, and a typical working image is around 4mb 15:41:45 you can strip it down but i haven't explored this direction yet 15:42:05 Nod, I'll investigate latter how much it can be stripped down 15:42:09 there is a fundmental problem with using crt0 in a language that doesn it fundamentally differnet 15:42:13 the image has online help and development tools on it 15:42:21 Ah you have a string supporting stack, interesting 15:42:27 Lars_G: i have objects 15:42:32 everything is an object 15:42:59 objects automatically persist in the image 15:43:25 So postfix arithmetic is just RPN 15:43:38 yes, like forth 15:43:53 i have to go, bye 15:44:13 the only two things that are necessa from crt0 are 1. crt0.s to see what stuff to get off the stack, and 2. unexec for saving. 15:46:25 while forth can be made to handle FFI and foreign libs, that shoe-horning, sqr peg in round forthy hole 15:46:52 but it offends the forth-taste of doing it forth style 15:47:02 what do you mean? 15:47:09 ffi from forth is very easy 15:47:18 gforth has a C ffi, and factor has a C and objective-C ffi 15:47:26 yes but forth is a complete developement environment 15:47:28 in realtime 15:47:49 and you can interactively test C libraries in real time with it 15:47:59 foreign-lang code (even compiled) is not forth 15:48:07 of course 15:48:17 but if your forth runs under a host OS, it has to interact with it to be useful 15:48:25 you need 'ffi' to display text on the console, even 15:48:26 but the crt isnt needed 15:48:31 no you dont 15:48:50 system calls count as ffi 15:48:59 no they dont 15:49:07 but making syscalls directly is silly 15:49:16 that is the nature of what forth can do. 15:49:32 but what you do to your forth is up to you. 15:49:34 and imean that 15:49:35 What is that supposed to mean? 15:49:46 if you want ffi and libs, then more power to ya. 15:49:49 " that is the nature of what forth can do." 15:49:56 ok... 15:49:59 umm 15:50:03 he means forth in the purist, colorforth, no-OS sense 15:50:12 Ah. The toy sense. 15:50:17 yes 15:50:20 forth is meant to run on hw, as own host, or as app or debugger 15:50:28 no, not toy 15:50:40 i remember a line from an ancient forth book 15:50:41 In fact Forth is not 'meant to' do that at all. Some incarnations of it run that way, some don't. Even in its earliest days. 15:51:02 something like "every forth runs to the beat of your drum 15:51:20 make it do what you want 15:51:30 that doesn't preclude running under a host OS 15:51:32 not do what? 15:51:49 -- loeliger's book iirc 15:53:37 I think that running forth inside a system (OS) without regarding the OS and it's methods is silly. 15:53:54 a pure forth should be employed only in a pure forth system. Not over an OS 15:54:05 libc is just user code. it's expendable when the user interface (forth) doesnt need it 15:54:07 if I get the drift of the conversation correctly. 15:54:24 Quiznos: on most OSes, you need libc, and a host of other libraries (libX11 or whatever) to display graphics 15:54:37 slava i submit that it's not needed. 15:54:52 of course, alot of work then needs to be done to replace what is not used 15:54:59 but that's an individual decision 15:55:06 I submit that flying monkeys should fly up your butt, but I don't expect it to happen. :) 15:55:10 Correct, but it's user code that's used and spread thoroughly thorough the OS libraries and applications (sorry for the redudance), dissregarding it, is in a sense dissregarding the system, since the system has gotten used to lay libc as a middle man layer in general 15:55:13 (i've given this alittle thought :) 15:55:32 Quartus i called the exterminator to kill the Witch 15:55:33 Quartus: Would you even WANT that to happen? 15:55:39 or just libsdl 15:55:52 Lars_G linux kernel doesnt use libc at all internally 15:55:57 Doesn't libsdl ends up in libc afterall? 15:56:06 Right, instead of using libc and libraries native to the OS, you should completely rewrite the functionality yourself, and do so in a way that remains compatible with other applications in a multitasking shared-graphics environment. Good idea, that. 15:56:13 yes, sdl depends on libc, and x11 etc 15:56:28 Quartus well then you only have to port the API and fun() signatures 15:56:33 hmm... I guess I've never tried using SDL without C 15:56:54 SDL is just an unification layer with tools. 15:57:04 sdl is junk :) 15:57:11 I submit that you don't need the computer, either. Just work out your issues with an abacus and some graph paper. of course, alot of work then needs to be done to replace what is not used. 15:57:28 it gives an unified interface to existing underlaying techniques, and adds a few tools to do some more complex tasks 15:57:32 well, heh, i'm doin biblicl research, i need my puter 15:57:40 sdl is fabulous 15:57:51 it doesn't work well on mac os, and its too limited (1 window, no clipboard) 15:57:54 its only good for simple games 15:58:11 everything I always wanted in a graphics api, except an rgb hardware assisted scalling blitter 15:58:20 i like opengl 15:58:27 I don't like apps that do multiple windows 15:58:32 Maybe I should just restrict to C++ and Qt/GTK+/wxWidgets/Fox and shoot myself 15:58:38 sdl does opengl 15:58:46 JasonWoof: your OS does multiple windows 15:59:01 slava: eh? 15:59:04 slava: How do you know? he can be running cpm 15:59:10 I'm running ion 15:59:18 under linux 15:59:19 on a mic 15:59:22 mac 15:59:42 so new windows completely obscure the old one 15:59:48 Shure or Senhaisser? 16:00:00 (as apposed to partially obscuring them as in most other WMs) 16:00:08 JasonWoof: They're still considerable separate entities in my view no matter the visibility factor 16:00:13 either way it's irritating 16:00:26 --- join: crc__ (i=crc@pool-151-197-230-102.phil.east.verizon.net) joined #forth 16:00:37 multiple tiled windows is still multiple windows 16:00:48 oh, another sdl limitation is you cannot repaint just part of the screen 16:01:30 really? 16:01:36 slava: yes you can 16:01:43 If only Linux implemented Cocoa I'd be happy 16:01:45 are you saying UpdateRect or whatever doesn't work? 16:01:52 it doesn't work with double buffering or GL 16:02:06 wtf? 16:02:08 ah. 16:02:11 I guess that makes sense. 16:02:20 if you're doing double buffering you have to use Flip to update the screen 16:02:28 I thought that was the whole point 16:02:37 yes, but you might want a double buffered update of part of the screen 16:02:37 and I thought it was instantaneous, so who cares? 16:02:48 its not instantaneous to repaint the whole window, depending on contents 16:02:58 even if a flip is atomic 16:03:10 the back buffer contents are lost between repaints 16:03:20 so... are you saying that you want to be able to write to the buffer that's being displayed currently? 16:03:27 no 16:03:32 i want to 'flip' just part of the screen 16:03:44 that goes completely against my idea of how flip works 16:04:02 or be able to do double buffering using blipping instead of page flipping 16:04:04 I thought flip is supposed to tell the graphics card to use a different contiguous section of video memory for the frame buffer 16:04:22 page-flipping 16:04:27 that's how i remember it 16:04:32 but people chg 16:05:15 that's the model, but it doesn't actually work that way anywhere IIRC 16:05:31 it doesn't work that way for windowed SDL rendering in any case 16:06:16 so why use flip then? 16:06:26 there's no other way to do double buffering in sdl 16:06:33 just allocate another buffer 16:06:37 and blit? 16:06:39 and blit whatever bits of it to the screen you want updated 16:06:55 isn't that usually what libsdl ends up doing anyway when you select double buffering? 16:07:08 (if flip doesn't actually do what I described) 16:07:40 yeah, SDL could definitely do with an update. 16:07:53 isn't there an sdl2 in progress? 16:07:55 I wish they had done SDL 2 instead of just updating 1.2.x 16:08:11 it's dead 16:08:13 oh, they bailed? 16:08:16 grrr 16:08:54 I'm pretty happy with it the way it is 16:10:00 --- join: osh (i=74081307@Orleans-ppp42523.sympatico.ca) joined #forth 16:10:35 my goal is to run on the three platforms i care about without external dependencies 16:11:44 --- quit: crc_ (Connection timed out) 16:12:02 --- nick: crc__ -> crc_ 16:12:19 my goal is to recieve keypresses and releases and sound out pixels 16:12:47 s/sound/send/ 16:13:07 and eventually networking stuff 16:13:54 networking is easy 16:14:06 I hope so 16:14:25 I hope I can do it in an easy and cross-platform way 16:14:53 --- quit: Teratogen (Connection timed out) 16:19:39 --- part: osh left #forth 16:22:54 --- quit: Snoopy42 (Read error: 145 (Connection timed out)) 16:26:57 I remember networking being a moderate pita under linux 16:27:17 had to do lots of screwy things like ioctls and such 16:27:30 figure out some screwy data structures and lots of constants 16:29:26 You can always bitbang a network card ;) 16:47:56 heh 16:47:57 no thanks 16:48:22 I'm trying to write something that will work easily on as mony people's computers as possible 16:48:32 mostly just concerned about linux, mac and windoze 16:53:51 --- part: Lars_G left #forth 16:54:54 --- join: Teratogen (i=leontopo@intertwingled.net) joined #forth 17:07:02 --- quit: tathi ("leaving") 17:07:57 --- join: Snoopy42 (i=snoopy_1@dslb-084-058-135-069.pools.arcor-ip.net) joined #forth 17:44:17 --- join: danniken (i=CapStone@71.143.168.27) joined #forth 17:51:57 --- join: OrngeTide (i=orange@rm-f.net) joined #forth 18:12:02 --- nick: nanstm -> Raystm2 18:29:38 --- quit: danniken () 18:54:22 --- join: yoyofreeman (n=root@219.145.13.44) joined #forth 19:21:18 --- quit: cp (Read error: 113 (No route to host)) 19:50:13 --- join: cp (n=cp@83.151.30.46) joined #forth 19:56:30 --- quit: cp (Read error: 104 (Connection reset by peer)) 19:56:32 --- join: cp (n=cp@83.151.30.46) joined #forth 20:11:37 --- join: segher (n=segher@dslb-084-056-136-108.pools.arcor-ip.net) joined #forth 20:27:38 --- quit: segher_ (Read error: 110 (Connection timed out)) 20:32:38 --- join: cp_ (n=cp@83.151.30.46) joined #forth 20:32:39 --- quit: cp (Remote closed the connection) 20:33:30 --- join: jungledog (n=jungledo@adsl-64-217-181-151.dsl.lgvwtx.swbell.net) joined #forth 20:33:45 --- part: jungledog left #forth 20:38:11 --- quit: crc_ (Read error: 110 (Connection timed out)) 21:12:35 --- join: danniken (i=CapStone@71.143.168.27) joined #forth 21:12:39 --- part: danniken left #forth 23:59:59 --- log: ended forth/06.02.07