2024-08-19 00:02:16 xentrac: it's a bit presumptive to think the only reason I'm asking is because I don't know how a linker works 2024-08-19 00:02:33 you could have saved yourself a lot of typing 2024-08-19 00:07:08 sorry, I thought I was answering "how does the compiler/linker go back and fix the integers laid down with a, ?" 2024-08-19 00:07:17 I guess I misunderstood your question 2024-08-19 00:09:35 lack of labels makes things interesting for linkage though, what about forward references and multiple passes? 2024-08-19 00:10:43 MrMobius: I think there are a lot of people around who don't know how a linker works; probably even most C and assembly programmers couldn't tell you what the relocation types are on their favorite architecture 2024-08-19 00:10:54 I didn't mean to insult you 2024-08-19 00:16:04 xentrac: I don't know how you determined I was one of those people 2024-08-19 00:16:08 but no offense taken 2024-08-19 00:16:26 such is the nature of IRC it seems 2024-08-19 00:16:30 well, I misunderstood you to be asking how linkers worked 2024-08-19 00:17:35 I just learned that I can do 0 .r instead of doing 0 <# #s #> type to output a number without trailing spaces 2024-08-19 00:18:56 I like how PForth displays the stack contents after each line of input 2024-08-19 00:19:17 along with the current output base 2024-08-19 00:21:40 unjust: I think you can come up with labels, or if you use a, you could just add a base address to each address thus stored 2024-08-19 00:23:18 hmm, https://pfe.sourceforge.net/ links to http://sourceforge.net/sflogo.php?group_id=http://sourceforge.net&type=4 and to http://nav.webring.org/cgi-bin/navcgi?ring=forth;list 2024-08-19 00:27:49 I was trying to figure out how to compile PFE for FreeDOS just now 2024-08-19 00:28:47 and I suspect maybe the MS-DOS support has been removed from 21st-century versions 2024-08-19 00:30:46 ah yes. "run on as many posix-systems as possible, and may make a backport to win/dos (currently only supported as cygwin)." 2024-08-19 00:52:01 https://web.archive.org/web/20161101081337/http://nav.webring.org/cgi-bin/navcgi?ring=forth;list links to several pages, most which hvae outlived webring.org 2024-08-19 01:44:56 so it seems like PFE 0.9.14 was the last released version of PFE with MS-DOS support 2024-08-19 02:35:33 wmaze.fs doesn't play nicely with gforth 0.5.0 - it freaks about about shuffle, so i hard code : rand ... ; 2024-08-19 02:35:45 s/freaks about/freaks out/ 2024-08-19 02:36:18 on freedos i needed NANSI.SYS, in dosbox it's already X.364'ified 2024-08-19 02:37:27 i also needed to reduce the width of the board by 1, as it'd display board rows interlaced with blank lines if left unmodified. i'm guessing this is due to the line ending being CR NL for dos instead of CR 2024-08-19 02:38:19 in any case, once started it seems to skip to the end animation sequence 2024-08-19 02:54:50 maybe it was going to the next line as soon as it printed a character in the last column, so cr would leave a blank line; I think the fact that this *doesn't* happen on the VT100 is a kind of strange quirk generations of terminal emulator developers have had to come to terms (!) with 2024-08-19 02:55:25 maybe there's a bug in shuffle; I've gotten segfaults in yForth and PForth which I suspect may come from there 2024-08-19 02:55:54 I did manage patch PFE 0.9.14 to compile and run under AMD64 Linux just now 2024-08-19 02:57:46 I had to remove its GCC efficiency hack of using global register allocation 2024-08-19 02:57:56 it takes about 1.4 seconds to compile from source with optimization 2024-08-19 02:58:51 however, it still doesn't quite work... 2024-08-19 14:04:11 h'lo folks 2024-08-19 14:04:31 Cheers! 2024-08-19 14:05:14 I haven't been using my iPad at all apart from schoolwork :| 2024-08-19 14:05:42 a project I been working on with others has turned up an intresting thing regarding Forth 2024-08-19 14:06:39 the project in question is https://github.com/organix/uFork/fpga 2024-08-19 14:07:30 we are using an dual stack machine to implement the microcode for this newfangled ISA 2024-08-19 14:07:51 but that isnt the intresting thing 2024-08-19 14:09:22 this uFork ISA uses something we call quads memory instead of a flat linear address space of bytes 2024-08-19 14:09:54 each quad is made up of four fields t x y z 2024-08-19 14:10:21 if you are familar with lisp cons cell then you arent far off 2024-08-19 14:10:26 link you want is actually: https://github.com/organix/uFork/tree/main/fpga :) 2024-08-19 14:10:45 link written out from memory, sorry 2024-08-19 14:11:14 np, just leaving it there so others who read it later can appreciate your work as well 2024-08-19 14:11:36 always forget the tree/main/ part 2024-08-19 14:12:28 so instructions in this ISA are kept in singly linked lists 2024-08-19 14:12:59 can you show some examples of encoding yet? 2024-08-19 14:13:25 and the fields of an quad can either contain fixnums or (opaque) references 2024-08-19 14:14:36 if you go up a directory in that github repo you see a docs folder 2024-08-19 14:15:35 but there is even a playground https://ufork.org/playground/?text=OyBBIHNpbXBsZSAiSGVsbG8sIFdvcmxkISIgZXhhbXBsZQoKLmltcG9ydAogICAgZGV2OiAiaHR0cHM6Ly91Zm9yay5vcmcvbGliL2Rldi5hc20iCgpoZWxsbzogICAgICAgICAgICAgICAgICA7ICgrNzIgKzEwMSArMTA4ICsxMDggKzExMSArNjMgKzEwKQogICAgcGFpcl90ICdIJwogICAgcGFpcl90ICdlJwogICAgcGFpcl90ICdsJwogICAgcGFpcl90ICdsJwogICAgcGFp 2024-08-19 14:15:36 cl90ICdvJwogICAgcGFpcl90ICc%2FJwogICAgcGFpcl90ICdcbicKICAgIHJlZiAjbmlsCgpib290OiAgICAgICAgICAgICAgICAgICA7ICgpIDwtIHtjYXBzfQogICAgcHVzaCBoZWxsbyAgICAgICAgICA7IHZhbHVlCiAgICBtc2cgMCAgICAgICAgICAgICAgIDsgLi4uIHtjYXBzfQogICAgcHVzaCBkZXYuZGVidWdfa2V5ICA7IC4uLiB7Y2Fwc30gZGV2LmRlYnVnX2tleQogICAgZGljdCBnZXQgICAgICAgICAgICA7IHZhbHVlIGRlYnVnX2Rldgo7ICAgIG1z 2024-08-19 14:15:36 ZyAwICAgICAgICAgICAgICAgOyAuLi4ge2NhcHN9CjsgICAgcHVzaCBkZXYuY2xvY2tfa2V5ICA7IC4uLiB7Y2Fwc30gZGV2LmNsb2NrX2tleQo7ICAgIGRpY3QgZ2V0ICAgICAgICAgICAgOyBjdXN0IGNsb2NrX2RldgogICAgc2VuZCAtMSAgICAgICAgICAgICA7IC0tCiAgICBlbmQgY29tbWl0CgouZXhwb3J0CiAgICBib290Cgo%3D 2024-08-19 14:15:55 vm.md and asm.md good starting points? 2024-08-19 14:15:59 yebb 2024-08-19 14:17:10 so the intresting thing is the main guy behind this overall project, Dale, didnt think one couldnt implement a forth ontop of uFork 2024-08-19 14:18:39 I asked him what he thought a Forth was. After I gave him my intrpretation: a Forth has two stacks and the dictionary 2024-08-19 14:19:57 btw in Koopmans terminology uFork is a single stack one operand machine 2024-08-19 14:21:40 but the intresting thing about this thing above re Forth is this Forth is memory safe and object-capabilities based because the underlieing uFork ISA is 2024-08-19 14:23:56 my question to you folks is, is this too wierd of a Forth (to be made) to be considered a forth? 2024-08-19 14:25:55 I am mulling if I should port&adapt eForth (with stuff taken from fig-forth and others) to uFork 2024-08-19 14:27:02 ocaps and actors programming is esoteric already and adding Forth into the mix will make it wierder 2024-08-19 14:29:10 btw not to worry, Dale made a Scheme compiler that targets uFork and we are thinking about making FlowBasedProgramming libraries too (in the future) and a noflow compatible fbp nets loader 2024-08-19 17:03:50 oh hi Zarutian_iPad 2024-08-19 17:11:33 unjust: you were right that gforth-itc has the single-step debugger working (on my cellphone at least) 2024-08-19 17:12:29 i had to rtfm after much confusion like you might have had to find that out 2024-08-19 18:35:22 thank you!