zeptoforth is a portable subroutine-threaded / native code inlining Forth for Cortex-M4/M7 microcontrollers designed to be able to compile to and run from both flash and RAM (the kernel of course exists in flash). At the present it does not support Cortex-M0 microcontrollers as it relies on key features of the Thumb-2 instruction set which are missing from the Thumb-1 instruction set implemented by Cortex-M0 MCU's such as instructions for writing to the bottom 16 bits and the upper 16 bits of values.
The library of code coming with zeptoforth includes support for lambda expressions, for SysTick, for interrupt-driven IO, for multitasking, for event scheduling, for multitasking supports, for a line editor, on the STM32F746 DISCOVERY board for Quad SPI external flash along with blocks and a block editor, and last but not least, LED drivers for driving the LEDs on boards such as DISCOVERY boards. Lambda expressions provide a lightweight way of declaring code that can be called from within other words without having full word headers. SysTick provides support for timing, and both the multitasker and the event scheduler are designed to integrate with it. The multitasker is preemptive and provides the ability to have multiple task priorities; it enables running code while having the REPL still being usable, amongst other things. The event scheduler allows executing words repeatedly, including with time delays, without the overhead of having full data and return stacks for each event; it can be used both with the multitasker and by itself. And the LED drivers are self-explanatory.