Quo vadis, GPC?
Frank Heckenbach
ih8mj at fjf.gnu.de
Fri Jul 30 09:47:38 CEST 2010
Adriaan van Os wrote:
> Frank Heckenbach wrote:
> >> 2. producing LLVM assembly <http://llvm.org/docs/LangRef.html>
> >
> > That might be an option. However, the problems I see are (a) I'm not
> > familiar with LLVM assembly (in contrast to C++), and I'm not sure
> > anyone else here is, so it would take additional learning before one
> > could get productive, and (b) it's, of course, low-level, so we'd
> > have to reimplement things like the object-model, templates,
> > exceptions etc., that C++ already has.
>
> LLVM assembly is easy to learn (easier than C++). With regard to implementing object models, GPC
> has several object-modes and most of them are, as far I know, not compatible with C++. We don't
> want to implement for example the TP object model with C++ objects, do we ?
I would want to (if we go the converter to C++ route). GPC objects
are not (and have never been) binary compatible with BP, and
feature-wise, AFAICS, the C++ model is a strict superset of the BP
model (and all other relevant models), with the probably necessary
mapping of BP con-/destructors to plain methods, as I wrote.
> I find LLVM assembly quite attractive, generic and well designed, distant from a moving API. I see
> a great future for LLVM. GCC looks more like an unstructured pile of macros. If a software project
> has a large bug database and successive releases only fix "serious regressions for primary
> targets", then something with that software project is fundamentally wrong (especially if the
> developers are hostile and aggressive on the subject on their mailing list).
I won't defend the GCC development model (I've been annoyed myself
often enough), but I have to say that GCC is quite more than a pile
of macros. The interface could be described as such (to a large
extent), but internally there's quite a bit more going on, e.g. the
various optimizers.
Frank
--
Frank Heckenbach, f.heckenbach at fh-soft.de, http://fjf.gnu.de/, 7977168E
GPC To-Do list, latest features, fixed bugs:
http://www.gnu-pascal.de/todo.html
GPC download signing key: ACB3 79B2 7EB2 B7A7 EFDE D101 CD02 4C9D 0FE0 E5E8
More information about the Gpc
mailing list