Hacker News new | ask | show | jobs
by hvs 3690 days ago
Any popular language that is going through a standardization process can teach us a lot. As opposed to languages that have "benevolent dictators" (Ruby, Python, etc), languages like Common Lisp, Scheme, C++ have all gone through standardization processes that often leave a lot to be desired.

Unfortunately, that lesson usually learned is "don't do it", but I'm hoping that Scheme has righted the ship a bit and R7RS will be able to balance the goals of multiple diverse groups. The last thing we need is another Common Lisp.

2 comments

Considering Common Lisp is still in use and doesn't need to be re-standardised despite several decades passing since, isn't its standardisation a great success?
It's lacking enough things like standardized networking and threading support that, no, many people don't consider it a success.

It was also a semi-atrocity in creation in ways that needlessly made it more difficult to implement, but that tale is best told by people more knowledgeable than I, I'd moved onto Scheme by then for the most part.

I think Common Lisp's success is due to the power of Lisp and that Common Lisp is the most modern full-featured version of Lisp. For all we know, if the standardization had been done better, Lisp might be more widely used than it is today.
It's trivial to run R5RS in DrRacket, for example, or other Scheme implementations as well. So it shouldn't really be a problem if R7RS becomes bloated, as you can stay on R5.
Well, note that this is about R7RS-large; R7RS-small is "a 'small' language, suitable for educators, researchers, and users of embedded languages, focused on R5RS compatibility" (http://trac.sacrideo.us/wg/wiki/R7RSHomePage see also http://www.scheme-reports.org/), its spirit is R5RS cleaned up and with a library feature to allow R7RS-large to be cleanly added.
Ah, I'm just now learning about the large/small split. Thanks.