Re: intent to package: mocka modula-2 compiler
John Lapeyre <lapeyre@physics.Arizona.EDU> writes:
> On 31 Aug 1998, Christian von Roques wrote:
> roques>John Lapeyre <lapeyre@physics.Arizona.EDU> writes:
> roques>I've maintained Mocka from 1991 to 1995, and there were no significant
> roques>changes since 1995.
> The upstream package, or debian ?
The upstream package.
> roques>> Good News: The author says he can contribute a C version of BEG.
> roques>> I will get this as soon as possible. I already asked how free it is. In
> roques>> any case, I think it is a good development.
> roques>I agree, that it would be good if the source of BEG would be
> roques>available, but I still can remember how difficult it has been to get
> roques>Helmut Emmelmann's permission to distribute a i386-Linux-binary of
> roques>BEG. [Helmut Emmelmann is the author and owner of BEG]
I've asked Helmut Emmelmann <email@example.com>, what versions of BEG can
be made available. He said that he didn't object to distributing
executables of BEG-1.x, as long as they are not used for commercial
purposes without obtaining his permission first. This is, so that he
can point them to BEG-2.x, a much enhanced version of BEG, which
commercial software developer might want to use anyway. He might even
release the source of BEG-1.x under GPL, but he is still indecisive
about that. It is definitely OK to use these executables to build
backends for Mocka.
> roques>It would be good, if you'd package not only mtc, but all of Cocktail,
> roques>probably with mtc in a separate package.
> Right, that is exactly what I had thought. I have a cocktail
> package finished. But when trying to make the mtc package, I noticed that
> there are some binary files 'Scanner.tab', etc. which apparantly cannot be
> generated from the source, and there is no info on where they come from.
> I guess I could still upload mtc and cocktail, but only to non-free. Do
> you know anything about this ?
Old versions of rex and lalr produced Scanner.tab and Parser.tab
files, which were read by the produced scanners and parsers at
runtime. This was done, to circumvent the deficiency of Modula-2 that
it's impossible to create initialized data-structures [different from
strings]. Later versions of rex and lalr produce initialized arrays
if generating C. The generated Modula-2 code initializes the arrays
at runtime by decoding their contents from strings. Try searching for
a newer freely available Version of cocktail, or ask the author Josef
Grosch <firstname.lastname@example.org> for the latest free version.
> I also packaged m2c by Vladimir Makarov. Do you know anything
> about this ?
No, I do not know Vladimir Makarov's m2c.
> I noticed that extensions and calling conventions are quite
> different, among these compilers. Perhaps even the library is not
> standard. Is this correct ?
Yes, the non-standard library is the big weakness of Modula-2. I once
tried to read the [still unfinished?] ISO-Modula-2 standard, but found
that implementing their library for Mocka wasn't worth the effort.