Earlier quoted context omitted.
MIT's introductory engineering course used to teach Scheme to the students using the excellent SICP text. I believe they now teach their beginning students Java or Python. I am not sure if there are blog posts or papers detailing the benefits of using Scheme in the class room.
They switched the introductory course from Scheme to Python. The reason is because programming doesn't consist of building things up from first principles anymore, as is done in SICP. Now it largely consists of debugging and customizing already existing code, often via frameworks.
Lisp: A Language for Internet Scripting and Programming (1998) [pdf]
41–50 of 114 posts
Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]
#42I wonder if any teacher already tried to teach LISP as a first language instead of java or C, and what there was to learn about it.
Lisps have been used continuously for university level introductory programming courses at least since MIT's 6.001 in the 1980's. Today, PLT (the group responsible for Racket) might be considered to be the leader in research into the pedagogy of computer programming and Felleisen's How to Design Programs and student language sequence are used by several schools. I believe they include Rice, University of British Colu…
Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]
#43Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]
#44Earlier quoted context omitted.
Not even "in place of" but "in addition to". There's a reason that the script tag has a language attribute as part of the standard.
This I would love to see. I'm not aware of any project working to enable Scheme or Common Lisp in the browser, though. Anyone else?
Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]
#45Earlier quoted context omitted.
> I'm afraid you're browser doesn't support XScript, please download Chrome Explorer 310. But this sort of thing already happens all the time. You don't have the right flash player, or the right silverlight player, or the right version of Java. There would be very little difference in the UX between different scripting languages and the current UX w.r.t. media codexes, and the end result would be the same in both cas…
> But this sort of thing already happens all the time. You don't have the right flash player, or the right silverlight player, or the right version of Java. That's exactly the point. Imagine dozens of them.
IMHO that would be a better world than the one we currently live in. Javascript is serviceable for its original purpose, but for serious webapps it's broken beyond redemption. NOTE: This is not to say that it is impossible to write serious webapps in Javasceript. Obviously it is possible. What I mean is that at some point the aggregate cost of dealing with Javascript's design flaws becomes greater than the aggregate cost of dealing with multiple browser scripting languages.
Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]
#46I have given some thought to this in the past. Has there ever been a serious attempt at this?
Sometimes the error messages for really simple mistakes (missing semicolon, wrong punctuation, etc.) are obtuse and almost completely meaningless. Of course, if it were easy to give simple, clear error message in such cases, they resulting message would be simple, so it's other complexities that get in the way. The biggest problem I see is that having labelled training data, e.g. source code that fails compilation along with the specific actual error, is unlikely, and having an expert provide small, self-contained examples is unlikely to be useful (really, enough training data to be effective) in real world errors, even when novice programs are fairly small.
Edit: I was just thinking about this, and with prudent use of a VCS, labelled training data would just be pairs of the form . It would be interesting to see if it's possible to pull useful data from exiting history, or if some level of restraint is necessary in practice. Really, I'm just thinking about the precipice of supervised and unsupervised learning here.
Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]
#47Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]
#48AOL of course destroyed Netscape after purchasing it by encumbering itself and all it touched with an East Coast Big Dumb Company mindset. It wasn't until years later when Google started seeing Microsoft as the competition that anyone else treated the browser strategically. By that time, JavaScript had won just by showing up in IE 6 and in the legacy Mozilla carried from Netscape.
What might have happened if Yahoo had decided the browser was strategic instead of living off banner ad revenue at the expense of increasing irrelevance? They had Graham and the Viaweb team, and so some manager decided to port their code to C++ and the rest, as they say, is history that never was.
[1] It is interesting to think that Apple would build its future in ways that treated the browser as a commodity - first with the iPod and then with the app store.
[2] See Slava Akhmechet's The Nature of Lisp. It's definitely worth reading: http://www.defmacro.org/ramblings/lisp.html
Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]
#49Browser makers like Mozilla have had the option, at any time, to enable the use of Lisp (or any other language) in the place of Javascript. Nothing uniquely qualifies Javascript.
The kind and amount of technical expertise behind the development mass that drives most of the Web nowadays does, sadly.
Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]
#50I remember when Peter Norvig wrote the first cut at Silk - I think he wrote it in one weekend.