00:00:00 --- log: started forth/14.10.09 00:05:40 --- part: DocPlatypus left #forth 00:24:55 --- join: proteusguy (~proteusgu@ppp-110-168-229-140.revip5.asianet.co.th) joined #forth 00:47:05 --- quit: proteusguy (Remote host closed the connection) 00:50:45 --- join: proteusguy (~proteusgu@ppp-110-168-229-140.revip5.asianet.co.th) joined #forth 00:56:07 --- quit: DGASAU (Read error: Connection reset by peer) 00:57:05 --- join: DGASAU` (~user@p50993595.dip0.t-ipconnect.de) joined #forth 01:00:41 --- nick: DGASAU` -> DGASAU 01:20:07 Makign a subroutine-threaded Forth in ARM is a pain. 01:20:34 Because there's no real "call" instruction as such. You have to do it manually by pushing the link register, then calling through it. 01:32:39 --- join: xyh (~xieyuheng@2001:250:3002:5550:6ea1:cc0f:bcb2:b187) joined #forth 01:32:47 I mean: when you type ``1 2 + .'' to the interpreter, the interpreter does NOT read them one by one, but compiles them to a function of which the function-body is ``1 2 + .'', and call the function. 01:32:57 I think this is called incremental-compile in other languages (such as Ocaml and some Scheme implementations), it is to let the interpreter works as a compiler but looks like an interpreter. 01:33:04 this is wished, for in this kind implementation, one does not have to handle some key words such as "if" & "then" twice, once for "if" & "then" inside function definitions, once for "if" & "then" outside function definitions. 01:33:38 subroutine threaded has what special features ? I ll be back in two hours and view the channel log :) 01:33:48 --- part: xyh left #forth 01:33:58 Subroutine threading is where a word consists of a series of call instructions. 01:34:03 That's pretty much it. 01:36:37 i remember seeing something that worked that way, xyh 01:37:15 it was a modern forth dialect that supported closures. 01:37:40 or at least anonymous functions. 01:40:40 Yes. Closure-like things are made easier if you do subroutine threading. 01:41:15 If you give words like <[ and ]> in those scenarios, you can make them do pretty much what xyh was describing quite easily. 01:41:33 i believe it, but i don't understand how the threading mode has anything to do with what he's talking about. 01:41:33 You make a subroutine, store it somewhere, and push its address on the stack. 01:41:56 Well, he seems to want to make EVERYTHING act as if it's implicitly in closures. 01:42:05 If I'm understanding him correctly. 01:42:20 Basically, all modern CL and Scheme implementations perform compilation without calling it some special term. 01:45:19 Oh, Asau is going to start on his "why Forth is evil because it raped his mother" routine again I see. 01:45:23 Please, do continue. 01:45:36 That routine never gets tiresome. 02:00:39 i think the language i was thinking of is http://web.archive.org/web/20140630082850/http://aerosuidae.net/raven.html but i'm not sure because the site is down and the cache isn't complete. 02:01:23 Factor has that facility as well, but that's not really a Forth dialect. 02:02:55 maybe it's not raven. i'm not sure. 02:03:47 pretty sure it was someone who'd written several different forth-like languages. 02:09:44 --- join: protist (~javery@120.225.69.111.dynamic.snap.net.nz) joined #forth 02:16:11 --- quit: DGASAU (Read error: Connection reset by peer) 02:17:10 --- join: DGASAU (~user@p50993595.dip0.t-ipconnect.de) joined #forth 02:18:58 --- quit: proteusguy (Ping timeout: 260 seconds) 02:31:56 --- join: proteusguy (~proteusgu@ppp-110-168-230-26.revip5.asianet.co.th) joined #forth 03:02:01 --- quit: DGASAU (Read error: Connection reset by peer) 03:02:58 --- join: DGASAU (~user@p50993595.dip0.t-ipconnect.de) joined #forth 03:05:42 --- join: nighty-_ (~nighty@hokuriku.rural-networks.com) joined #forth 03:06:54 --- join: true-grue (~grue@95-26-152-144.broadband.corbina.ru) joined #forth 04:26:24 --- quit: ErhardtMundt (Read error: Connection reset by peer) 04:30:19 --- join: ErhardtMundt (~quassel@93-43-71-119.ip90.fastwebnet.it) joined #forth 05:35:56 --- join: Zarutian (~zarutian@168-110-22-46.fiber.hringdu.is) joined #forth 05:36:05 --- quit: nighty-_ (Remote host closed the connection) 05:36:34 --- join: xyh (~user@125.94.36.48) joined #forth 05:36:53 ttmrichter: I ll go to re-study the thread-techs, for now all I used is indirect-thread. 05:36:59 tangentstorm: about the language you mentioned, anonymous function support is in its TODO-list. closure is for lexical-scope of name-binding, I have supported anonymous function and lexical-scope, but I use "simple direct-graph-processing" instead of closure. "simple direct-graph-processing" is just list with circles, when I need a name-binding, I just make one more circle in the list. 05:37:31 I am trying to implement the thing that I mentioned above now. it is ``the right thing'' :) the whole system will be able to get rid of interpreter-semantic, it makes the structure of the system more clear. 05:37:56 every function that not only takes arguments from the Argument-stack, but also from the inputed string following that function, should be rewrite. for example "the begin of comment" used to be implemented as a function, now it should be treated specially. 05:39:53 and nested function definition must be supported :) 05:39:55 --- join: nighty-_ (~nighty@hokuriku.rural-networks.com) joined #forth 05:40:59 ISTR that person who implemented that "raven" stuff. 05:42:32 xyh: next step is to invent separation of syntax and semantic phases. :) 05:44:53 DGASAU: ``separation of syntax and semantic phases'' ? is it a sarcasm ? 05:44:57 IIRC, the person who implemented "raven" wasn't actually "implementor of many Forth interpreters", it was his diploma or even course project. 05:45:40 xyh: yes, closer to that. 07:10:33 --- quit: xyh (Remote host closed the connection) 07:12:13 --- quit: impomatic_ (Ping timeout: 240 seconds) 07:18:27 --- join: pgomes (d4b9b9a4@gateway/web/cgi-irc/kiwiirc.com/ip.212.185.185.164) joined #forth 07:59:10 --- quit: pgomes (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 08:16:50 --- quit: DGASAU (Remote host closed the connection) 08:19:09 --- join: DGASAU (~user@p50993595.dip0.t-ipconnect.de) joined #forth 08:52:19 --- quit: protist (Ping timeout: 244 seconds) 09:09:25 --- join: xyh (~xieyuheng@2001:250:3002:5550:6ea1:cc0f:bcb2:b187) joined #forth 09:20:58 --- quit: ErhardtMundt (Read error: Connection reset by peer) 09:25:31 --- join: ErhardtMundt (~quassel@93-43-71-119.ip90.fastwebnet.it) joined #forth 09:40:06 --- join: true-grue_ (~grue@95-26-80-118.broadband.corbina.ru) joined #forth 09:42:25 --- quit: true-grue (Ping timeout: 244 seconds) 10:09:26 --- join: beretta (~beretta@cpe-65-185-42-203.columbus.res.rr.com) joined #forth 10:57:27 --- quit: tangentstorm (Quit: WeeChat 0.3.2) 10:57:54 --- join: tangentstorm (~michal@108-218-151-22.lightspeed.rcsntx.sbcglobal.net) joined #forth 11:09:09 --- quit: danfinch (Quit: WeeChat 0.4.1) 11:11:31 --- quit: Zarutian (Quit: Zarutian) 11:57:18 --- quit: beretta (Quit: Leaving) 11:58:40 --- quit: xyh (Ping timeout: 260 seconds) 12:05:34 --- quit: DGASAU (Ping timeout: 240 seconds) 12:08:49 --- quit: bbloom (Quit: Textual IRC Client: www.textualapp.com) 12:10:10 --- join: DGASAU (~user@p50993595.dip0.t-ipconnect.de) joined #forth 12:25:14 --- join: Zarutian (~zarutian@168-110-22-46.fiber.hringdu.is) joined #forth 13:49:24 --- quit: nighty-_ (Quit: Disappears in a puff of smoke) 14:25:54 --- join: karswell (~user@87.114.35.172) joined #forth 14:59:08 --- quit: irsol (Ping timeout: 245 seconds) 15:07:58 --- join: irsol (~irsol@unaffiliated/contempt) joined #forth 16:08:41 --- join: ehaliewicz (~user@50-0-50-37.dsl.dynamic.fusionbroadband.com) joined #forth 16:25:15 --- quit: ehaliewicz (Quit: ERC Version 5.3 (IRC client for Emacs)) 16:25:55 --- quit: carc (Ping timeout: 260 seconds) 16:31:04 --- join: carc (~carc@unaffiliated/carc) joined #forth 16:47:10 --- join: protist (~javery@220.224.69.111.dynamic.snap.net.nz) joined #forth 16:51:41 --- quit: true-grue_ (Read error: Connection reset by peer) 16:59:12 --- quit: irsol (Ping timeout: 272 seconds) 17:02:23 --- join: irsol (~irsol@unaffiliated/contempt) joined #forth 17:03:37 --- join: xyh (~xieyuheng@2001:250:3002:5550:6ea1:cc0f:bcb2:b187) joined #forth 17:09:20 --- quit: irsol (Ping timeout: 272 seconds) 17:14:47 --- join: irsol (~irsol@unaffiliated/contempt) joined #forth 17:20:04 --- quit: irsol (Ping timeout: 250 seconds) 17:20:26 --- quit: Zarutian (Quit: Zarutian) 17:22:58 --- join: irsol (~irsol@unaffiliated/contempt) joined #forth 18:04:15 --- quit: xyh (Remote host closed the connection) 18:22:32 --- quit: MrMobius (Quit: HydraIRC -> http://www.hydrairc.com <- \o/) 18:31:37 --- join: MrMobius (~Joey@c-98-223-189-47.hsd1.in.comcast.net) joined #forth 19:18:40 --- join: saml_ (~saml@pool-71-190-7-10.nycmny.east.verizon.net) joined #forth 21:55:36 --- quit: proteusguy (Remote host closed the connection) 21:56:47 --- quit: saml_ (Quit: Leaving) 22:07:34 --- join: karswell` (~user@87.114.35.172) joined #forth 22:08:07 --- quit: karswell (Read error: Connection reset by peer) 23:21:01 --- quit: ErhardtMundt (Read error: Connection reset by peer) 23:22:16 --- join: pgomes (d4b9b9a4@gateway/web/cgi-irc/kiwiirc.com/ip.212.185.185.164) joined #forth 23:25:27 --- join: ErhardtMundt (~quassel@93-43-71-119.ip90.fastwebnet.it) joined #forth 23:33:44 --- join: proteusguy (~proteusgu@180.183.124.176) joined #forth 23:39:20 --- quit: proteusguy (Ping timeout: 260 seconds) 23:59:59 --- log: ended forth/14.10.09