This line of thinking brought forth an intriguing proposition: Could Forth, known for its interactive and intimate relationship with hardware, be an innovative foundation for cloud and serverless environments? Here are some focal points:
- Interactive System Access: Forth allows for direct memory inspection and modification, potentially streamlining debugging and profiling.
- Minimal Attack Surface: With its compact footprint (often <100KB), Forth’s attack surface is reduced, suggesting enhanced security.
- Parallel Execution Potential: By statically analyzing the Forth dictionary, one could assign specific words or tasks to individual CPU cores, reminiscent of the thread-per-core approach, and potentially bypass traditional thread management overheads.
Given these traits, might Forth be a suitable base for crafting highly efficient, secure, and parallelized systems for specialized cloud applications? Are there pitfalls or challenges I might be overlooking in this approach?
Mindful, this will be a new kind of Forth, one built for Big Iron servers, and where HW resource are prime real state, this could be a very interesting approach to hardness more of the potential on “bare metal”.
I’m eager to gather the community’s insights on this intriguing prospect.
From that experience, I tend to agree with your intuitions.
Now that we have 64-bit CPUs, it's tempting to revisit Forth. What might be missing is he massive collection of libraries we have in other languages.
Forth, BTW, historically, has been pushed directly to Silicon in at least two instances, the first one by Chuck Moore [1], the second one designed by Philip Koopman [2]
"forth chip" now gives pretty good google.