texmacs-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Texmacs-dev] TeXmacs source prerequisites


From: David Allouche
Subject: Re: [Texmacs-dev] TeXmacs source prerequisites
Date: Thu, 19 Jun 2003 17:03:26 +0200
User-agent: Mutt/1.5.4i

On Thu, Jun 19, 2003 at 02:44:03AM -0700, Karl M. Hegbloom wrote:
> On Thu, 2003-06-19 at 01:39, David Allouche wrote:
> > You need not know anything about the STL or other standard libraries
> > since TeXmacs implements its own fundation classes.
> > [...]
> > Also, a very good book to read is "Design Patterns". It will present a
> > number of high-level constructs that will see in several places in
> > texmacs C++ code.
> > 
> > For the rest... well... read code, experiment and write code.
> 
> I know this has already been explained, but I think it might be good to
> link it to this thread anyhow...  What is the story behind the ".gen.cc"
> file names still mentioned by the comments (eg: top of
> "./src/Classes/Abstract/basic.hh")?

Once upon a time there was a programmer who decided to use C++ to
write TeXmacs.

But he was very unsatisfied by the state of C++ templates support in
g++ at this time (1998 or 1999). So he wrote his own preprocessor
which implemented "parameterized modules", some name mangling to
implement a simple template-like functionality and a nowhere-else-seen
build system. The preprocessor and build system was known as
gencc/gendep. Files which had to be proprocessed in this way had the
file name extensions gen.cc and gen.h (or gen.hh, not sure).

A few years later, came another programmer who was very much annoyed
by texmacs not using the (now correctly supported) standard C++
template system and common GNU make features. So he turned the whole
thing upside down and ablated gencc/gendep off the code base. In the
course of this major surgical operation all the source files were
renamed to use the regular cc and hh file name extensions.

However, he forgot to fix the comments so there are still vestigial
occurences of the old file names all around the code base.

Anyone is welcome to fix this cosmetic bug :-)

-- 
                                                            -- ddaa




reply via email to

[Prev in Thread] Current Thread [Next in Thread]