freeone3000 3 days ago

Implement as a state machine? But. Your program exists as a set of transforms upon memory. Your program is a state machine! You just need to define the proper morpisms to map your problem domain to the computer domain.

1
marcosdumay 3 days ago

Transformations are separable by principle, it's a fundamental property of them that state machines have as an afterthought that is even hard to represent.

It doesn't matter if they have equivalent power. One of those representations fundamentally allows your software to have an architecture, the other doesn't.

freeone3000 3 days ago

How much of software architecture is required because of the architecture? If your program has types that are the possible states, and functions to transform between those states, what architecture is needed beyond that? A grouping of related types, perhaps?

marcosdumay 2 days ago

Yeah, just one layer of functions is enough for everybody.

Let's look next at that "compiler" thing and high-level languages. The hardware-native one suffices, no need for all that bloat.