axiom-developer
[Top][All Lists]
Advanced

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

Re: [Axiom-developer] Re: Ping: case insensitive filesystems


From: Gabriel Dos Reis
Subject: Re: [Axiom-developer] Re: Ping: case insensitive filesystems
Date: 17 Nov 2006 16:04:48 +0100

Waldek Hebisch <address@hidden> writes:

| Gabriel Dos Reis wrote:
| > Explainingg why the new code is right implies one needs to understand
| > what the old code is doing and why it is wrong.  In that respect, it
| > is just as important as the why of new code.
| > 
| 
| I would say that one of the major sins of Axiom code is that it is
| hard to say what the code is doing. 

Yes.  

| More precisely: I belive that
| even designers of Axiom could not tell you what Axiom is doing on
| invalid inputs. 

Yes.

| And while designers had some idea what is 
| considered as valid input, Spad compiler accepts without complaint
| a lot of garbage.

Yes. And it usually crashes.

|  I belive that in general algebra files give
| you better idea about Spad language then the compiler.

That is true of any language, especially for any language that evolves.

However, as is the case in many languages, the algebras contains in
many places workaround limitations of the compiler (not just the
language).  Consequently, it is also hard to tell what the language is.

| So, I belive that if we understand what Spad compiler is doing
| with algebra and we implement equivalent functionality in new 
| compiler we can reasonably scrap the old one.  

yes, but you'll notice that to get that point, understanding the
existing one is equally important.  

It is not a static thing.  It is a living thing.  Until one gets to
the point where one has an improved version, the current version is
important.  When we have the improved version, the old version would 
be said to *have been* important -- even it *is not* as important
anymore. Software live, breath until they die.  And when they die we
can't rewrite history.  

-- Gaby




reply via email to

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