Replies: 1 comment
-
Oh that's an interesting idea! TinyGo has its own RTOS-like system, that's how it schedules different goroutines. It also supports CGo, which means you can call C functions (or Forth functions that adhere to the same ABI) from Go. It does not inherently need a main loop though that's how TinyGo programs are often structured. Unfortunately https://www.spyr.ch appears to be down at the moment so I can't open the links you gave. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I have found Mecrisp Forth extremely useful in modern embedded development.
When developing with a compiled language, the code-compile-upload-run cycle can be frustrating. This is where a modern Forth, like Mecrisp, shines. It’s fast enough and operates very close to the hardware, enabling you to toggle bits, read registers, and retry operations on the fly. However, it comes without many of the tools and libraries developers often rely on.
This is where MecrispCube comes in. It is a compiled environment that incorporates Mecrisp assembly code, offering the best of both worlds.
Questions
Does TinyGo include an RTOS or multitasking environment that would allow Forth to run as a CMSIS-RTOS thread? Alternatively, would it be feasible to include TinyGo as a thread in a Forth-based cooperative multitasking system?
Is the register structure of TinyGo similar to that of C, enabling calling C functions from Forth and vice versa?
Should I wait for TinyGo to mature?
Simple Questions
How do I include GNU Assembler code in a TinyGo file?
Would it be simpler to use interrupts to trigger Mecrisp code execution?
Embedded systems often run in infinite loops. How would I call the Forth engine from within such a loop?
General Thoughts
Beta Was this translation helpful? Give feedback.
All reactions