[M3devel] higher level m3cg?
Mika Nystrom
mika at async.caltech.edu
Wed Aug 22 13:00:48 CEST 2012
In fairness, doesn't "C as target language" work OK for Pascal (p2c)
and Fortran 77 (f2c)?
Mika
"Dirk Muysers" writes:
>This is a multi-part message in MIME format.
>
>------=_NextPart_000_0018_01CD7F9F.8021D180
>Content-Type: text/plain;
> charset="iso-8859-1"
>Content-Transfer-Encoding: quoted-printable
>
>*** A warning ***
>Norman Ramsey's opinion (in stackoverflow) on possible compiler =
>backends:
>
>Code generation is my business :-)
>
>Comments on a few options:
>
> a.. CLR:=20
>
> a.. Pro: industrial support=20
> b.. Con: you have to buy into their type system pretty much =
>completely; depending on what you want to do with types, this may not =
>matter=20
> c.. Con: Only Windows platform is really prime-time quality
> b.. LLVM:
>
> a.. Pro: enthusiastic user community with charismatic leader=20
> b.. Pro: serious backing from Apple=20
> c.. Pro: many interesting performance improvements=20
> d.. Con: somewhat complex interface=20
> e.. Con: history of holes in the engineering; as LLVM matures expect =
>the holes in the engineering to be plugged by adding to the complexity =
>of the interface
> c.. C--
>
> a.. Pro: target is an actual written language, not an API; you can =
>easily inspect, debug, and edit your C-- code=20
> b.. Pro: design is reasonably mature and reasonably clean=20
> c.. Pro: supports accurate garbage collection=20
> d.. Pro: most users report it is very easy to use=20
> e.. Con: very small development team=20
> f.. Con: as of early 2009, supports only three hardware platforms =
>(x86, PPC, ARM)=20
> g.. Con: does not ship with a garbage collector=20
> h.. Con: project has no future
> d.. C as target language
>
> a.. Pro: looks easy=20
> b.. Con: nearly impossible to get decent performance=20
> c.. Con: will drive you nuts in the long run; ask the long line of =
>people who have tried to compile Haskell, ML, Modula-3, Scheme and more =
>using this technique. At some point every one of these people gave up =
>and built their own native code generator.
>Summary: anything except C is a reasonable choice. For the best =
>combination of flexibility, quality, and expected longevity, I'd =
>probably recommend LLVM.
>
>Full disclosure: I am affiliated with the C-- project.
>
>=20
More information about the M3devel
mailing list