Now that I am not longer on the critical path for NuttX support, I am much less involved in the RTOS. I thought, perhaps, people might be interested in what I have been up to.
I have spent the last 6 months or so working on that Pascal compiler that I used to use with NuttX a few years ago. This is just fun stuff; I don't think it has has any applicability to businesses at all. I have basically done these things: - I have upgraded the language definition to state of most current desktop Pascal compilers (FreePascal, Lazarus, GNU Pascal) but avoiding the trend to make it object-oriented Pascal. Pascal with classes, exceptions, etc. doesn't feel right to me. - I have ported the toolchain and P-Code VM to run on NuttX again. The toolchain is rather large, but not so large that you could not use it on some MCUs with more resources. For more resource constrained platforms, the VM alone is pretty small and perfectly usable. - I have a VM start-up C task that can boot the OS into Pascal (for example, the Pascal shell). - There is the beginning of a Pascal shell that supports a few commands. In particular, it supports running multiple Pascal threads (by spawning multiple copies of the VM). - Currently it runs on Linux and NuttX. But I would like to get the VM running on near-bare metal too. - I would like to see the compiler work JIT so that I could send Pascal source to the target and it just runs. - And lots of other fun ideas. You can see the code here: https://github.com/patacongo/Pascal and there is a WIP document with some history and language specifics here: https://github.com/patacongo/Pascal/blob/main/doc/PascalNotes.md The code is pretty stable but still not too difficult to produce compile errors, although those are getting rarer and rarer. Greg