I pasted a couple of the docs into translate and they came out fine. English is spoken the world over, Dutch isn’t.
Speaking as a Dutch person, I think it’s fine to translate everything to English.
Okay. so codgen1, codgen2 compiles. cgyacc compiles and run. Overall things look positive. I need somehow put standard library into view file (?or vice versa). But seems to be it depends on the standard package, which itself depends on cg so have to sleep and think what’s possible.
Awesome! I hope to find out more about cg after asking Jan. We will need PCC as well, which is still available, since Ada- targets that. We’ll might have to dome some digging for an old version of PCC that still runs, or find out how backwards compatibility is handled in that project.
Edit: Removed speculation about where “cg” comes from
Hm, there was a low-level IR, called LOLITIA from Honeywell (IIRC) — if anyone has contacts, could we get the source, specs, and/or documentation on it?
The mention of DIANA above reminded me of it.
Well, after committing the unmodified source, translating comments could be a single push, and you still have the original comments in the history. / If it’s for educational purposes, as mentioned previously, then comments should be in the student’s language, obviously.
Actually, bringing up DIANA again: it is, by design, very close to the source-text pretty much being just tokenized. — In my rewrite/redesign, a comment is a text-node and the process of regenerating/editing-in-text could have a translation function incorporated. This is actually a great reason to use something like my DIANA-successor: no text except for comments makes this sort of practical task much, much easier as you don’t apply the Translate-function to anything except the comment-nodes.
I did remember right!
Here’s the paper: LOLITA - A Low Level Intermediate Language for Ada+*.
@Lucretia’s mention of Ada+ made me a little excited, but it looks like it’s just footnoting. But aside from that, it is a portion of the “root compiler” effort mentioned up-thread.
I have e-mailed Jan with an update and told him about the enthusiasm in both this community and the bootstrapping community about the Ada- source code. I have asked him if he could shed some light on the missing src/cg folder.
Looking at the source it seems it’s part of the compiler backend and if it’s the “code generator” as described in the thesis it will be of little use to us. Ada- has a two phase backend. The first phase is a “code expander”. This takes the intermediate representation generated by the frontend and transforms it into the low-level representation that can be fed to PCC for building the actual assembly. Aside from that it annotates the input IR with addressing and storage information. This annotated IR can then be used by what the thesis calls the “program library” for linking other compilation units.
So that seems like a pretty standard backend layout. I think that it would be great if we could get this system running up to the point where we have the IR after semantic analysis. This would create a nice cut off point to introduce a newer backend. Having the code expander working would be slightly less useful, aside from maybe the main structure, since we’re not targetting PCC for the 68000 and I doubt whether the IR that modern PCC accepts is compatible with what Ada- could generate (but hopefully I’m wrong of course ![]()
When I have the time I will do a sweep of the codebase to translate all the Dutch to English.