Re: backup archive format saved to disk
On Tue, Dec 12, 2006 at 09:52:50AM +0900, Miles Bader wrote:
> Whoops, chopped off my last paragraph; I meant:
> It has many other advantages however, including those from OOP, and more
> unusually, a notational power that makes certain sorts of programs
> _much_ easier to write/read. [Part of this is the fact that doing so
> can be done _efficiently_ -- it's very common to see e.g. java programs
> which are hard to read and have subtle bugs because of the tricks
> they're playing to avoid heap allocating temporary objects. Because C++
> allows using value (or value-like) semantics instead in many cases, you
> don't need so many tricks, and it can greatly improve the
> maintainability of the code.]
I know, I know. Those tricks are a pain in the butt.
Eiffel eliminates that problem with its "expanded" classes.
Modula-3 avoids that problem by having data structures that are *not*
made of objects (in the technical OO sense) and that can be places off
the heap, and in other objects.
Modula-3 even goes the whole way to low-level system programming with
its "unsafe" features. The difference between these and C++ or C is
that you can't use them by accident; you have to explicitly mark the
code that uses them as "unsafe".
Although I find these languages wordy, I still think it a great pity
that C++ took off instead of them.