Hacker News new | ask | show | jobs
by hga 4178 days ago
From the fine website http://www.shenlanguage.org/

  Shen is a portable functional programming language that offers

  pattern matching,
  lambda calculus consistency,
  macros,
  optional lazy evaluation,
  static type checking,
  an integrated fully functional Prolog,
  and an inbuilt compiler-compiler.
Among other things, it's an attempt to create a Lisp that incorporates some of the things you find in functional languages like Haskell.

Here's an essay, from an invited talk for the 2009 European Conference on Lisp, on the motivations to create Qi and then Shen: http://www.lambdassociates.org/blog/nextlisp(1).htm

1 comments

Very interesting essay. Kind of reminds me of OMeta and some of the stuff that comes out of VPRI with Alan Kay et al. But mostly the approach reminds me of OMeta's way of "absorbing the easy stuff" and "infiltrating" - but from a different (and perhaps more rigorous) angle.

Now if only the (cheap!) book on Shen was available as a DRM-free epub book.

Indeed, and that's one of the things I find attractive about it, especially since I believe Lisp is the One True Way and much of the parsing effort that VPRI worked on is irrelevant to me (but not things like the idea of parsing illustrations in RFCs and generating a TCP/IP stack!).

As for the book, right now the work on the project by the author is supported by direct patronage or buying his books. And there's much more in the book than just "leaning Shen". Here's the web page for it: http://www.shenlanguage.org/learn-shen/TBoS/

Which includes the preface, table of contents, and conceptual dependency table, i.e. what previous chapters you need to have mastered to understand each chapter.

From the chapter titles and subtitles, here's stuff that goes substantially beyond "learning Shen":

  Higher Order Functions (e.g. partial application and currying)
  Non-determinism (non-deterministic algorithms)
  Shen-YACC (sigh, needed for e.g. pattern matching)
  Lambda Calculus
  Writing Good Programs
  Sequent Calculus
  The SECD Machine
  Shen Prolog (12 pages on Prolog per se)
  The Compilation of the Sequent Calculus
And there's a lot of material on types (one of the features of Qi/Shen). So you get a whole lot of CS exposition in the context of Shen.
Oh, I didn't mean to imply the book wasn't (well didn't appear not to be) great value. I'd be happy to pay ~20 GBP for a DRM free epub version. Not sure if I'll buy the paperback.