.

Whatever is on your mind, whether Lisp related or not.

.

Postby xibalba » Sat Mar 24, 2012 2:19 pm

.
Last edited by xibalba on Fri Nov 27, 2015 6:17 pm, edited 1 time in total.
xibalba
 
Posts: 12
Joined: Thu Feb 24, 2011 2:24 pm

Re: Meta Lisp?

Postby nuntius » Sat Mar 24, 2012 4:10 pm

This will probably come off as overly snarky, but "its called Scheme".

By my understanding, Scheme was and largely still is designed to embody principles like those you describe.
The Scheme community strives for a simple, clean, elegant language.

The problem is that large systems are inherently complicated. Elegance is difficult. Together, progress is often slower than in more "pragmatic" languages.

CL is a more pragmatic language. They had a bunch of code and decided to preserve compatibility rather than starting over.

Would a clean start be good? Theoretically, yes; but it might also set development back another decade or two.

I think that the designer of new languages today should take an approach similar to that of CL or C++. Add new features, and provide mechanisms to easily integrate legacy code.
It is not a novel idea, but one that is very hard to pull off right. While designers of old merely thought of new ideas, designers of today must also have experience and wisdom to fill a need within the existing ecosystem.

So don't throw away the CL package. Instead, create useful extensions that provide improved functionality. Or develop applications and libraries. Or develop new techniques for low-level language binding. etc.

There's an old saying: "Necessity is the mother of invention"

In the programming context, I think that means "start writing useful code, and that will focus you on the real problems and their solutions".
User avatar
nuntius
 
Posts: 521
Joined: Sat Aug 09, 2008 10:44 am
Location: Newton, MA

.

Postby xibalba » Sat Mar 24, 2012 5:27 pm

.
Last edited by xibalba on Fri Nov 27, 2015 6:17 pm, edited 1 time in total.
xibalba
 
Posts: 12
Joined: Thu Feb 24, 2011 2:24 pm

Re: Meta Lisp?

Postby nuntius » Sat Mar 24, 2012 6:21 pm

The crazy stuff you are finding sounds par for the course, especially in the context of old console games. My first computers were a Vic 20 and later a C64. Their programs showed the same sort of crazy optimizations. Here's a fun writeup on Crash Bandicoot that gives some insight into the culture.

Is reorganizing CL worthwhile? I had a similar project called cl-sanity when I was first learning. Reading the spec, sorting things into different packages, etc. It was quite educational, but I wouldn't obsess with it. Writing programs that you can use and share with others is much more satisfying and worthwhile.

I suspect as you gain experience, you'll keep revisiting "what would make programming more effective?", try various languages, and maybe even try implementing some.

FYI, when they were forming the standard, there was a proposal to split CL into a smaller core and optional extensions. Unfortunately, the proposal came in a bit late and there wasn't enough time for it to be properly evaluated. I forget where I found it documented. Perhaps in some of the hyperspec notes.
User avatar
nuntius
 
Posts: 521
Joined: Sat Aug 09, 2008 10:44 am
Location: Newton, MA

Re: Meta Lisp?

Postby nuntius » Sat Mar 24, 2012 9:20 pm

By random coincidence (or my strange taste in blogs), I just ran across this.
http://shape-of-code.coding-guidelines. ... h-mistake/
User avatar
nuntius
 
Posts: 521
Joined: Sat Aug 09, 2008 10:44 am
Location: Newton, MA

Re: Meta Lisp?

Postby nuntius » Sun Mar 25, 2012 10:32 am

User avatar
nuntius
 
Posts: 521
Joined: Sat Aug 09, 2008 10:44 am
Location: Newton, MA

.

Postby xibalba » Sun Mar 25, 2012 4:34 pm

.
xibalba
 
Posts: 12
Joined: Thu Feb 24, 2011 2:24 pm


Return to The Lounge

Who is online

Users browsing this forum: No registered users and 2 guests

cron