Hello ! On Mon, 2022-07-18 at 11:56 -0400, Tim Daly wrote: > One early Axiom project question was how to keep Axiom > alive after the project lead dies (aka me). Almost all projects > die once the lead developer stops developing. Since Axiom > is so complex it needs a lot of explanation to transfer the > required knowledge. I really want it to survive and flourish. >
Because project is complex I suspect it needs lot of dedicated uninterrupted time to understand and maintain/improve it. Probably you have to live inside this project to do meaningful work on it (full time). It is hard to get started on complex project if you have to do it after work, besides family and other chores on small scraps of free time. Maybe project will be lucky and someone financially independent with interest in math and lots of free time discovers it (need for another Isaac Newton). Maybe Jim Simons donates money to the project. Unless there exists already one, maybe foundation needs to be established similar to Linux Foundation: https://en.wikipedia.org/wiki/Linux_Foundation to ensure that project leaders can afford to work on the project. > Along the way down the nano-rabbit hole I'm learning to write > in Verilog to design chips and Forth to program them. Forth > is ideal as it fits in less than 4K but can use all the hardware. I did my own forth virtual machine and then forth operating system on top of it long time ago: https://www3.svjatoslav.eu/projects/fifth/ Virtual machine needed DOS to run. Probably can be still used on FreeDOS. Have not maintained it for long time. It had filesystem support and had text editor inside. So one can program now system while using it. Major problem I have with Forth is that code is write-only. You have to keep the state of data stack in your head at every line. When you open method that you wrote long time ago and scroll in the middle, you don't know what is going on, unless you read it from beginning to mentally reconstruct state of stack. You cannot change any line without ensuring that stack will remain consistent. Because of that I believe that some higher level language should be used for most of programming. Maybe that higher level language can be compiled to forth or forth byte-code, or forth should be used to implement lisp ?. This manual stack balancing and optimization should be either limited or shall be left for machine to do. Best regards -- Svjatoslav Agejenko WWW: http://svjatoslav.eu