Live data from Hacker News

Lisp: A Language for Internet Scripting and Programming (1998) [pdf]

norvig.com

101–110 of 114 posts

Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]

#101
post #98

Earlier quoted context omitted.

> among the Lisps, though tellingly not the case with Scheme, the association list was already in place An association list is just a list which elements are conses. I'm fairly certain that cons, car and cdr were part of Scheme since the beginning and they are all you need to build assoc and friends. Scheme lacked a proper hashtable datatype though, which was present in some other Lisps.

he was talking about scope here. hashes do not help much. assoc lists were important to implement dynamic environments simple and fast, which is not so easy with hash tables. In assoc lists you tolerate duplicates, but by putting new at the beginning you override/"shadow" the old ones, until you leave scope and use the old assoc list. and share the data! with hashes you have to actively delete or copy the tables. non…

They're really neat. When I learned about them it emphasised that it's amazing what a handful of cons cells and some thin air can do.

Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]

#102

Earlier quoted context omitted.

I'm not sure asm.js is a bet on JavaScript, per se. It makes using other languages easier without resorting to a whole new language like Dart, or dependencies on certain platforms with NaCl.

It's not fair to claim NaCl is restricted to any platform since all implementations now use PNaCl.

I didn't say it was restricted to a platform, but that it depends on certain platforms, one of which is PNaCl. asm.js does not depend on the existence of such a platform, since it is backwards compatible with JavaScript.

Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]

#103
post #66

Earlier quoted context omitted.

Googling turned up several on just the first page of results: http://www.biwascheme.org/ http://sisc-scheme.org/sisc-online.php http://lisperator.net/slip/ http://alex.nisnevich.com/ecmachine/ But the parent is really the right answer -- ClojureScript is actually targeted at meeting modern web development challenges and has a thriving ecosystem of powerful tools for the same.

Compiling to Javascript isn't what I find interesting. I'd like support for . Pure Lisp, compiled for the user's browser and OS. No Javascript anywhere.

You can do this now

  
  (console-log "Hello, world!")
  

Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]

#104
post #97
post #60

Earlier quoted context omitted.

> if you find it bad I don't. (Presuming that by "it" you mean "having a lot of plugins floating around".) > Nobody caresa bout Java or Silverlight Netflix uses Silverlight. There are an awful lot of nobodies using Netflix. > we seem to be doing ok even with such a language That depends on what you consider "OK". Blub users always think that things are OK. > most languages cannot handle unicode strings properly The p…

> That depends on what you consider "OK". What I consider OK is that we have had great growth in the breadth, scope and capabilities of the modern web. I've been on it professionally since 1996, and followed it even before, and I don't think there's anyone who would disagree with such a statement. From a joke environment based on plain text circa 1993-4, we know have the ability to emulate whole CPUs inside a Javascr…

> 3-4 C people in AT&T laid the foundation for most of what we use today.

The security consultants on the 21st century know whom to thank for their jobs.

Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]

#105

Earlier quoted context omitted.

Compiling to Javascript isn't what I find interesting. I'd like support for . Pure Lisp, compiled for the user's browser and OS. No Javascript anywhere.

You can do this now (console-log "Hello, world!")

You see that ".js" in your example? I don't want it.

I would like to know how to implement and deploy a scripting engine that has no dependencies on Javascript whatsoever.

Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]

#106

Earlier quoted context omitted.

You can do this now (console-log "Hello, world!")

You see that ".js" in your example? I don't want it. I would like to know how to implement and deploy a scripting engine that has no dependencies on Javascript whatsoever.

That doesn't materially matter. I know you don't want it, but it in no way effects the computation.

Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]

#107
post #86

Earlier quoted context omitted.

Scheme has plenty of dirty imperative methods, if you want. Their names end with `!`, like `set!` to mutate a variable. In most cases it's cleaner to be purely functional, but it's not required. Predicates end with `?`, like `equal?`. This naming and consistency makes it easier to learn Scheme. What makes Common Lisp more practical is libraries. Hairy and crufty some may be, but many of them, and many of good quality…

I really don't like the Common Lisp naming and the 2-space nature of the language makes this even worse. The conflict of the implementors appears in many places. I like many things about scheme, but I won't whitewash it's problems. Non-standard, non-portable racket libraries aren't the answer to scheme's basic nature (though I believe r7rs-large will solve a lot of these issues). More serious dealbreakers in my work…

Racket's extensive collection of libraries aren't meant to answer anything about Scheme -- they're for Racket. That's why we changed the name.

Racket is, however, a great answer to "is there a Lisp that's both conceptually consistent and has lots of libraries".

Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]

#108

Earlier quoted context omitted.

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…

Funnily enough, the PLT group is working on a new language for education called Pyret http://www.pyret.org/ . It's not very similar to Scheme, it is very similar to Python.

It would be more accurate to say that that Shriram Krishnamurthi and his group at Brown, which are one part of the large PLT "collective", are working on Pyret. The rest of us are still working on Racket.

Re: Lisp: A Language for Internet Scripting and Programming (1998) [pdf]

#109

Earlier quoted context omitted.

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?

ClojureScript is a subset of Clojure that compiles to Google Closure-optimized JavaScript, so close enough, right?

http://hoplon.io/ is a lot closer to the Hickey/Norvig/Anderson paper.
Post reply on HN