lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

On Wed, May 23, 2012 at 8:54 AM, Peter Hickman <> wrote:

Personally I like PiL, it reminds me of K&R when I first saw it.

[Hi all! First post, but this topic made me jump the lurking barrier...]

I think this point is well made. PiL as a language is much like the book: simple and no simple-r. 

My personal point of view is that I was introduced to Lua from the web, where I was able to learn that, yes, there are modules and through enough effort, I could eventually find them. Once I fell into love with the design of the language and its ideas, I bought the book.

The appeal of Lua and PiL, is that both can be held within my small brain. I know what is in both, right now. So, the shorter the book, the easier it is to master the ideas of everything in it, which is not to say that you can easily master the language (or computer science), itself. The attitude that I have to approaching the language is deeply effected by the page count and anyone's attitude is going to affect the level of effort they put into doing so.

A related point is that a big thick book with a list of things that change faster than the language does is only going to make the book that much more frustrating when I come back to it and it "doesn't even cover the new XXX module!"

My favorite quote regarding Lua is (paraphrased) 

"I needed a module and chose the Lua Way: Poked around for a couple of hours, found a couple that met my needs and then wrote my own."

I know where to go to find modules: the web. Then I find Luarocks and the wiki. Those are great resources but lately github has become more relevant to me, and that's sad because those projects are not put into a larger Lua Context. They're only the result of what I find by accident of my searching ability. My perception is that, relative to Lua's significance to a broad range of people that might be curious about it, things are fragmented, stale, awesome and somewhat hard to find. That's a web problem, however. THE book on the Lua Programing language is not the tool in which to fix that.

With that, my PiL suggestion (which others are free to shoot down):

I love how the book teaches Lua through examples. Some examples that I'd like to see used might include:
-Some of the basics of event loop programming
-Emulating or supporting message passing patterns. 
-How you might solve a problem using callbacks and how that might be expressed in lua.
-How method chaining might be used.

What I might be getting at is that PiL, like The C Programming Language, was actually pretty good at teaching some important concepts in CSCI. The examples in it were fantastic and if I would change anything, I would perhaps pick some good concepts as mechanisms to teach some of the new material in 5.2

My .02 cents. :)

-Andrew Starks

Sent from my iRon.