Wed Oct 19 09:33:22 EDT 2011
The next hurdle is block nesting. Doing this only inside the printer
is too messy. This needs an intermediate syntax that can represent
I'm not sure if the SSA dominator approach is necessary though.
- Syntax can be simple, meaning it might be able to represent
illegal constructs. Correctness is guaranteed through properties
of the domain of the transformation, not the image..
- Printing is messy. Try to limit it to straightforward mappings.
Maybe this just needs 2 languages. Embed Term into something else
that can represent all this in a straightforward way.
Hmm.. do subsets need separate representations (and operations..).
Why not just use subsets on the same type, trying to restrict
The thing is, nested scopes are a really useful feature of C that
probably completely covers my use case. I think they are quite
straightforward to translate to the more low-level LLVM
representation, so let's just make it work with C in mind.
I'm thinking to separate pointer computation and poiner dereference.