00:00:00 --- log: started forth/17.01.16 00:40:52 --- quit: mark4 (Ping timeout: 240 seconds) 00:50:52 Well I have a few options 00:51:06 first of all c can produce a very good forth and c runs on most microcontrollers 00:51:42 second of all assembler can produce a very good forth but not all assembly languages come with macros 00:51:51 also c does not port to all assembly languages 00:52:01 especially the high level assembly languages 01:04:04 https://sites.google.com/site/lccretargetablecompiler/ 01:16:42 DGASAU: I have decoded some of your krivine machine with the help of some math wizards 01:17:04 A krivine machine is represented by a pattern of four states and the next state that they logically transform to 01:17:09 four state changes 01:17:11 of the entire state 01:17:40 when you describe the entire state there are three subcategories. One is the stack, one are the terms, and one is the environment 01:17:47 you can represent these all as dynamic arrays 01:17:59 in terms of the stack it can probably just be an array and nothing else 01:18:08 I suspect taht the terms can be an array as well 01:18:21 I am not quite sure if the environment can be an array but I suspect it 01:18:45 All that I must do now is figure out the process of each state change 01:19:15 This would be alot easier though if you could simply give me access to your krivine machine 01:19:21 and teach me how to use it 01:36:46 It's fine if you don't. It is such a small mathematical equation taht is so valuable if you are correct that I will spend my entire life figuring it out if I have to 01:37:00 though I do not suspect it will take my whole life since I have already got the stack figured out 01:38:35 if you think of it about 3 states per system states and 4 possible system states that is 12 possible states to think about. But we can multiply that by two thirds and get 8 because we don't have to worry about the system state. Also we have a before and after state so we mutiply that by 2. Which leaves 16 things to figure out before I understand the krivine machine 01:47:02 --- quit: DGASAU (Ping timeout: 255 seconds) 01:49:29 --- join: DGASAU (~user@lmpc.drb.insel.de) joined #forth 02:22:44 --- quit: nighty (Quit: Disappears in a puff of smoke) 02:53:11 --- join: wa5qjh (~Thunderbi@121.54.90.140) joined #forth 03:09:27 --- join: GeDaMo (~GeDaMo@212.225.83.98) joined #forth 03:25:24 --- quit: wa5qjh (Ping timeout: 252 seconds) 04:00:40 --- join: nighty (~nighty@s229123.ppp.asahi-net.or.jp) joined #forth 04:18:39 .... and we're back to the fucking krivine machines again 04:36:52 I think I saw this scenario in Terminator 6: Krivine Machines Rising :-D 05:06:08 --- join: ricky_ricardo (~rickyrica@2602:306:328f:79f0:b104:5b75:b492:7e22) joined #forth 05:59:32 --- quit: DGASAU (Ping timeout: 240 seconds) 06:02:00 --- join: DGASAU (~user@lmpc.drb.insel.de) joined #forth 06:25:07 --- quit: M-jimt (Remote host closed the connection) 06:50:10 --- join: M-jimt (jimtmatrix@gateway/shell/matrix.org/x-iuynqsukrqrmrdcx) joined #forth 06:56:01 --- quit: mtsd () 06:56:24 --- quit: mnemnion (Remote host closed the connection) 07:38:25 --- quit: proteusguy (Remote host closed the connection) 07:39:44 --- join: proteusguy (~proteus-g@2405:9800:b400:495c:4a51:b7ff:fe38:d966) joined #forth 07:39:44 --- mode: ChanServ set +v proteusguy 07:45:42 --- join: neceve (~ncv@79.115.225.255) joined #forth 07:45:42 --- quit: neceve (Changing host) 07:45:42 --- join: neceve (~ncv@unaffiliated/neceve) joined #forth 08:27:54 --- join: circ-user-QcIM5 (~circuser-@2602:304:4159:4770:e15d:9141:2f4a:973d) joined #forth 09:07:20 --- join: mark4 (~mark4@138-229-170-157.dhcp.ftwo.tx.charter.com) joined #forth 09:10:37 --- join: mnemnion (~mnemnion@2601:643:8102:7c95:f51d:3350:3529:1478) joined #forth 09:41:08 --- quit: neceve (Quit: Konversation terminated!) 09:42:58 --- join: Zarutian (~zarutian@168-110-22-46.fiber.hringdu.is) joined #forth 09:44:07 --- join: zincing (~zincing@2a03:1b20:2:f702::16de) joined #forth 09:44:43 --- part: zincing left #forth 11:11:51 --- join: rgrinberg (~rgrinberg@rrcs-108-176-18-36.nyc.biz.rr.com) joined #forth 12:54:33 I'm having a hard time reasoning about how a forth cross compiler might work. any pointers? 12:56:53 the only thing I've come up with is that I imagine it would track two dictionaries: one with host (compile-time) semantics and one with target (run-time) semantics. but then I'm not sure how words like ' would work: do they push the address of a host word or the address of a word in the target image? 12:57:56 You can swap back and forth between host and target vocabularies as needed 12:58:11 Huh, "back and forth" :P 12:58:25 which forth in particular are you referring to, and where can I read about it? 12:59:03 I'm sure I read a description of meta compiling like that but I'm not sure where 13:00:41 I wrote a simple one myself a long time ago 13:03:40 I'm noticing a running theme with forth: everything was written a long time ago and was simple, but there's never any evidence of it 13:04:44 Yeah :( 13:05:34 I actually feel like I'm right on the cusp of having a light-bulb go off, I just can't get over the lip 13:06:20 I have a working forth that I've written from scratch complete with a rudimentary module system and some other nice things, I'm just struggling with the transition from compiling/running in user memory to generating executable binaries 13:11:06 --- quit: ricky_ricardo (Remote host closed the connection) 13:14:29 --- join: ricky_ricardo (~rickyrica@2602:306:328f:79f0:69b4:8626:3880:53bf) joined #forth 13:15:08 zy]x[yz: looks like Brad Rodriguez wrote something on metacompilation in Forth Dimensions 13:15:51 I'm looking at the references here 13:15:53 http://www.bradrodriguez.com/papers/moving4.htm 13:16:06 And here's the archive of FD http://www.forth.org/fd/contents.html 13:19:33 thanks, I'll have a look 13:27:18 --- quit: ricky_ricardo (Remote host closed the connection) 13:29:39 --- join: ricky_ricardo (~rickyrica@2602:306:328f:79f0:f48e:ed1e:1be9:a55f) joined #forth 13:49:36 GeDaMo, I found rodriguez's 6809 forth source written in cross-forth. this should be a good read. thanks again 13:56:34 --- quit: GeDaMo (Remote host closed the connection) 14:21:59 i have a PDF of a 6502 FIG forth :) 14:22:02 sources 14:22:22 no meta compiler in there :P 14:40:48 --- quit: nighty (Quit: Disappears in a puff of smoke) 14:41:07 --- quit: mnemnion (Remote host closed the connection) 14:41:25 --- join: mnemnion (~mnemnion@2601:643:8102:7c95:f51d:3350:3529:1478) joined #forth 15:39:18 --- quit: true-grue (Read error: Connection reset by peer) 16:21:44 --- join: nighty (~nighty@d246113.ppp.asahi-net.or.jp) joined #forth 16:32:54 --- quit: Zarutian (Quit: Zarutian) 16:53:13 --- quit: ricky_ricardo (Remote host closed the connection) 18:11:46 --- join: neceve (~ncv@79.115.225.255) joined #forth 18:11:46 --- quit: neceve (Changing host) 18:11:46 --- join: neceve (~ncv@unaffiliated/neceve) joined #forth 18:30:10 --- quit: mark4 (Quit: Leaving) 18:43:21 --- join: wa5qjh (~Thunderbi@121.54.90.128) joined #forth 19:17:04 --- quit: wa5qjh (Remote host closed the connection) 19:26:33 --- join: wa5qjh (~Thunderbi@121.54.90.128) joined #forth 19:55:10 --- quit: wa5qjh (Remote host closed the connection) 20:38:38 --- quit: neceve (Quit: Konversation terminated!) 20:43:25 --- quit: circ-user-QcIM5 (Remote host closed the connection) 21:05:14 --- join: wa5qjh (~Thunderbi@121.54.90.128) joined #forth 21:14:30 --- quit: wa5qjh (Remote host closed the connection) 21:21:41 Sam Falvo's kestrel3 project has an eforth compiler in it. Currently targeting the risc-v architecture which is quite cool. https://github.com/sam-falvo/kestrel/tree/master/3/src/forth 21:21:55 zy]x[yz, poke 21:28:25 --- join: wa5qjh (~Thunderbi@121.54.90.128) joined #forth 21:49:47 --- quit: rgrinberg (Ping timeout: 260 seconds) 22:01:21 Nice 23:59:59 --- log: ended forth/17.01.16