
Arc - An Unappreciated Approach to Language Design - jmorin007
http://beautifulcode.oreillynet.com/2008/02/arc_an_unappreciated_approach_1.php
======
ced
There was a quote, which I can't find exactly so I'll paraphrase:

 _Languages evolve not by accumulating new features, but by removing the
restrictions that make those features seem necessary_

As far as I know, Arc does little to remove restrictions from Lisp. Examples:

\- (setf (* 2 x) (- y 4)) cannot be expressed.

\- Infinite lists

\- Infinite memory (limited only by the total amount of information --- far
from what we have now)

\- Why do my objects "disappear" when the program ends? The whole
serialization "feature" comes from there.

\- Hash-tables are 1-1 mappings. Why not n-1? Why can't I write (= (color
'nicholas 'car 2) 'blue) without having to implement it myself?

\- Speed of execution. Because compilers are not "sufficiently smart", we have
to add declarations to the language.

Did I miss anything?

~~~
brlewis
Here's the quote:

<http://www-swiss.ai.mit.edu/~jaffer/r4rs_2.html#SEC2>

"Programming languages should be designed not by piling feature on top of
feature, but by removing the weaknesses and restrictions that make additional
features appear necessary."

------
Prrometheus
>Makes you nostalgic for the pre-Sarbanes Oxley era doesn't it?

SOX refers to management's legal duty to its public shareholders. It has
nothing to do with customer service.

~~~
derefr
And--this is just my understanding of a SOX-compliant software company; I've
never actually worked in one--part of that legal duty is to document any
changes made to the codebase (the product) so it can be QA-ed.

