Scheme is Love

Don Box's Spoutlet

Syndication

My MSDN Mag piece just came out.
 
I wish I could take credit for the title, but MSDN/MSJ has a long history of making up interesting titles for the pieces we write.  This isn't quite in the same league as "ATL Makes COM Programming a Joy," but it's up there…

Posted Sep 22 2005, 06:06 PM by don-box

Comments

Antao wrote re: Scheme is Love
on 09-23-2005 2:35 AM
I have a question. When you look at the Scheme source, after a couple of weeks of working on some other project, do you still understand it? The same applies to the new anonymous delegates...

C# was a huge step on cleaning up C++. Removing everything that was confusing, keeping what was good and adding a few good things from other languages. Aren't you guys going the other way around again?

Antao
Michael wrote re: Scheme is Love
on 09-23-2005 7:14 AM
What text did you use to dive into Scheme to really grok the fullness? Did you go with SICP?
Don Box wrote re: Scheme is Love
on 09-23-2005 9:29 AM
Antao,

I've gone back and looked at Scheme source I've written say six months ago and it still makes sense. That stated, I'm not a huge define-syntax abuser, so it's really not that different from looking at source in any other language.

As for the evolution of C#, I'm pretty happy with the direction its headed. On the anonymous delegate front, I think they're a pure win, as the ability to define a program in a single block statement makes things WAY more readable IMO. If you've ever tried to spelunk event-handler-heavy or asyncCallback-heavy C# 1.x code, you've seen the downside of requiring distinct/named method definitions.
Antao wrote re: Scheme is Love
on 09-23-2005 3:16 PM
To tell you the truth, this was the first time I saw Scheme. It was a bit of a shock when I saw the if syntax and the lambda thing... ;-)

About the delegates, I understand that you want to save steps to be more productive but, don't those steps force the programmer to organize its code? I think I'll avoid the anonymous delegates just like I avoid the ? : operator... ;-)

Antao

Add a Comment

(required)  
(optional)
(required)  
Remember Me?