← Back to context

Comment by Towaway69

5 hours ago

My approach is to start out with a 2D programming environment and once that becomes a general programming environment, to scale that up to 3D and explore how to map 2D to 3D. So first map 1D concepts to 2D and then move on.

As a 2D representation, I've been using flow based programming (FBP)[1] and it's incarnation in Node-RED[2]. The trick here is to understand how to use FBP to create more generalistic programs, i.e., to prove it's Turing Complete.

I think it would be a mistake to just start out with a 2D approach without also taking all the learnings we have made in 1D, i.e. TDD, OOP, KISS, DRY, Functional, Message Passing, Processes etc, and porting those to a 2D representation.

[1]: https://jpaulm.github.io/fbp/

[2]: https://nodered.org/