[HN Gopher] Programming Languages: Application and Interpretatio...
       ___________________________________________________________________
        
       Programming Languages: Application and Interpretation, 3rd Ed
        
       Author : spdegabrielle
       Score  : 243 points
       Date   : 2022-12-09 22:08 UTC (1 days ago)
        
 (HTM) web link (www.plai.org)
 (TXT) w3m dump (www.plai.org)
        
       | [deleted]
        
       | JackMorgan wrote:
       | Great course, I took it a few years ago while working full time
       | and loved it. I recommend this right alongside SICP for the
       | engineer who wants to dig deeper.
        
         | trenchgun wrote:
         | What does SICP offer that this book does not?
        
           | skrishnamurthi wrote:
           | SICP is mainly a book about how to structure systems. It also
           | tells you how languages work, but in far less detail.
           | 
           | PLAI (this book) teaches you how languages work. It also
           | tells you a bit about how to structure systems, but that is
           | not its goal. In part that is not a goal because of the
           | existence of books like SICP and, increasingly, DCIC
           | [https://dcic-world.org/].
        
             | gavinray wrote:
             | Oh wow. If I was an educator, this book _" A Data-Centric
             | Introduction to Computing"_ is what I would put in front of
             | people first.
             | 
             | Everything you do in software is in service of moving and
             | munging of data, programming paradigms are tools secondary
             | to that.
        
       | iwsk wrote:
       | >How SMoL Becomes Large
       | 
       | 30 seconds into opening the textbook and I already like it.
        
       | ngcc_hk wrote:
       | Great work.
       | 
       | Sorry side track totally. as part of my degree is under a Chicago
       | School professor, who I respect but still his work find puzzling.
       | Can this be a counter-example ... just like many others open
       | source project. The problem of public good i.e. those unlike fish
       | cannot be eaten. He went on to do work on trademark, copyright
       | and patent. Well copyright is what open source rely upon he would
       | say. But what is the incentive of doing it. Would the total
       | output less because of this ... he would ask.
       | 
       | The question as normal here: why not say sell it and give the
       | money to something you like, like charity.
        
         | skrishnamurthi wrote:
         | I'm afraid I don't really understand this question. I am
         | _interpreting_ it as,  "Why is the author giving it away for
         | free instead of charging money for it". If that is not what you
         | meant to ask, sorry!
         | 
         | Anyway, if that is what you meant to ask: Well, I'm the author,
         | so my answer may have _some_ substance (-:.
         | 
         | I have a good job and it pays me to have impact. I can have
         | much more impact by giving away the book to people interested
         | in learning. [o]
         | 
         | [o] This is not 100% true. Over the years, people have told me
         | they value a book more if it costs something. I am not looking
         | to please them.
         | 
         | In particular, I grew up in India and we could not afford fancy
         | (but great) Western textbooks. If there's a student like me
         | right now (whether in India or Indiana) who wants to learn from
         | my book but for whom its cost is an obstacle, that would make
         | me very sad. That's why all the books I have (co-)authored have
         | been available for free.
         | 
         | On the first edition's site [https://cs.brown.edu/~sk/Publicati
         | ons/Books/ProgLangs/2007-0...] you can see the different models
         | by which I have made the book available. They have netted me
         | some modest revenue. But there's always a free option.
        
           | j33zusjuice wrote:
           | I haven't read any of your books yet, but I can't overstate
           | how much I respect your stance on pricing and impact. Thank
           | you!
        
           | UncleEntity wrote:
           | I'd buy a paper edition if it were available to "support the
           | cause".
           | 
           | The last programming language book I bought the author got
           | two sales because Amazon didn't follow the delivery notes
           | where I specifically said don't leave it on the porch or it
           | will get stolen and one of my sketchy neighbors got a free
           | copy. Almost got a third sale as well but I happened to be
           | home and tracking the delivery driver so managed to get it
           | off my porch before the neighbors saw it.
        
         | michaelsbradley wrote:
         | why not say sell it and give the money to something you like,
         | like charity.
         | 
         | Per the author's website ( https://cs.brown.edu/~sk/ ), he is a
         | dedicated educator. Maybe he explicitly or implicitly intended
         | the publication of this work under a Creative Commons license
         | to be an exercise of charity (in the "love your neighbor"
         | sense), kindness, goodness, and/or generosity.
        
         | bawolff wrote:
         | Imagine if he sold the book to raise money for a charity that
         | publishes books for free.
        
         | naasking wrote:
         | > The question as normal here: why not say sell it and give the
         | money to something you like, like charity.
         | 
         | Giving away the book is a charitable donation to the entire
         | software industry. That is giving his money away to something
         | he likes.
        
           | skrishnamurthi wrote:
           | That's a lovely way to put it.
        
         | OkayPhysicist wrote:
         | At the end of the day, somebody needs to do the work in order
         | to create good. Adding layers of transactions can only reduce,
         | not increase efficiency.
         | 
         | If you, a person who knows something, want to achieve a public
         | good in educating others on that thing, then the most efficient
         | way of achieving that is just spreading the knowledge yourself.
         | If you sold your knowledge in a book, and then used the money
         | to pay someone else to write a book teaching the same thing,
         | and then distributed that for free, you can only have lost
         | efficiency.
         | 
         | It's like asking "Why should I pay for college instead of
         | working to make money to pay someone else to go to college and
         | then teach that information to me": It's absurd, because it
         | introduces entirely unnecessary transactions.
        
       | spdegabrielle wrote:
       | [Programming Languages: Application and
       | Interpretation](https://www.plai.org/)
       | 
       | From the preface;
       | 
       | > I have also written this book with working programmers in mind.
       | Many of them may have not had a formal computer science
       | education, or at least one that included a proper introduction to
       | programming languages. At some point, like that 90% of students,
       | some of them become curious about the media they use. I want this
       | book to speak to them, gently drawing them away from the hustle
       | and bustle of daily programming into a space of reflection and
       | thought. - Shriram Krishnamurthi, Brown University
        
         | lukeschwartz wrote:
         | Never heard of Pyret[0] before. Looks good. This data-centric
         | introduction to computing is also rather interesting [1].
         | 
         | [0](https://www.pyret.org/) [1](https://www.dcic-world.org/)
        
         | emmelaich wrote:
         | Maintainer of the interesting language pyret.
        
           | JonChesterfield wrote:
           | Interesting in what sense? Language outline at
           | https://www.pyret.org/docs/latest/A_Tour_of_Pyret.html
        
             | zem wrote:
             | one of the best thought-out syntaxes i have seen in a
             | programming language, for one.
        
               | jrvarela56 wrote:
               | Ok maybe I'm a weird type, but I got really excited when
               | the first thing they teach you is how to write a
               | test/assertion.
        
               | canadianfella wrote:
               | I thought you were talking about this one.
               | 
               | https://en.m.wikipedia.org/wiki/Esoteric_programming_lang
               | uag...
        
           | skrishnamurthi wrote:
           | To be accurate, Pyret is a collaboration (primarily) with Joe
           | Politz and Ben Lerner and they deserve most of the credit for
           | it.
        
       | wallscratch wrote:
       | Does anyone have suggestions with where to find more exercises? I
       | notice the book pdf has like ~38 total, but was curious where one
       | would find more.
        
         | skrishnamurthi wrote:
         | See https://cs.brown.edu/courses/csci1730/2022/assignments.html
        
       | psuedobrain wrote:
       | am i the only one for which programming language textbooks,
       | papers, blog posts, etc. in racket are really hard to follow? the
       | fact that the languages that is being operated on often looks
       | exactly like racket makes it really hard to separate the two if i
       | wanted to follow the tutorials in any other language.
        
         | skrishnamurthi wrote:
         | If you look at the book, you'll see that is not what it does,
         | and for this reason.
        
         | oxff wrote:
         | I went through the previous version with Rust. It is almost
         | entirely language agnostic. It could be in sign language.
        
       | gavinray wrote:
       | In case anyone has missed it, the author is in this thread and
       | has replied to a great number of comments/questions.
       | 
       | https://news.ycombinator.com/user?id=skrishnamurthi
        
       | jalino23 wrote:
       | this looks invaluable for self taught prog like me. anyone who
       | read this before can share their experience?
        
       | al-king wrote:
       | lexi lambda of "Parse, Don't validate" fame has compared this
       | favourably with SICP
       | (https://cseducators.stackexchange.com/a/7481).
        
       | ArcMex wrote:
       | An incredible project. Your motivations resonate with me. Thanks
       | for sharing.
        
       ___________________________________________________________________
       (page generated 2022-12-10 23:02 UTC)