You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucy.apache.org by Logan Bell <lo...@gmail.com> on 2012/05/26 17:57:45 UTC

[lucy-dev] Lucy Book Club

Hello,

Marvin and myself are going to be hosting a Skype book club of sorts. There
have been some conversations on IRC regarding parsing and the various books
that are germane to the subject. We thought it might be applicable to
perhaps go through a book as a community and share notes/ideas along the
way. Since a big portion of Lucy is built upon parsing and compiling to
host languages, this could be an opportunity to both sharpen ones skills
and also become more aware of the internals of Lucy itself.

The book that we plan on reading through is "Programming Languages
Pragmatics":
http://www.amazon.com/Programming-Language-Pragmatics-Third-Edition/dp/0123745144/

If this sounds interesting, grab a copy of this book and we'll start to
plan out when our first Skype session will be. I know that many of the
contributors are in various timezones so we'll need to find a time that
works for everyone that is interested.

Thanks,
Logan

Re: [lucy-dev] Lucy Book Club

Posted by Logan Bell <lo...@apache.org>.
It was great meeting everyone and getting through the first chapter, I look
forward to the next meeting. I went ahead and created a page on the Lucy
wiki for book club related information:
http://wiki.apache.org/lucy/LucyBookClub. Feel free to add any additional
information that might be relevant to this.

Thanks,
Logan

On Thu, Jul 12, 2012 at 4:18 PM, Marvin Humphrey <ma...@rectangular.com>wrote:

> On Mon, Jul 9, 2012 at 10:48 PM, Marvin Humphrey <ma...@rectangular.com>
> wrote:
> > I'm still planning to be there at the original time, 7:00 pm PDT.
> >
> > As discussed in IRC, I'm cool with meeting twice on this material.
>
> A makeup session which took place today at noon with 4 participants went
> very
> well.  We had a mix of people who had read all, some, or none of chapter 1,
> and everyone came away feeling like the discussion was time well spent.
>
> (Two people were available on Tuesday night but we didn't end up meeting.
> Nevertheless, I intend to keep showing up at the appointed time so that we
> accumulate momentum and so that participants can have confidence that if
> you
> put in the time to read up, someone will be there to discuss it with you.)
>
> Google Plus Hangouts seems to be working well for us.  Join us in the
> #lucy_dev IRC channel for connection instructions.
>
> The next chapter is fairly long, so as discussed during today's session,
> we're
> going to break it in half.
>
>   Tuesday July 17, 7:00 pm PDT:
>
>     2.1 Specifying Syntax: Regular Expressions and Context-Free Grammars
>         2.1.1 Tokens and Regular Expressions
>         2.1.2 Context-Free Grammars
>         2.1.3 Derivations and Parse Trees
>     2.2 Scanning
>         2.2.1 Generating a Finite Automaton
>         2.2.2 Scanner Code
>         2.2.3 Table-Driven Scanning
>         2.2.4 Lexical Errors
>         2.2.5 Pragmas
>
>   Tuesday July 24, 7:00 pm PDT:
>
>     2.3 Parsing
>         2.3.1 Recursive Descent
>         2.3.2 Table-Driven Top-Down Parsing
>         2.3.3 Bottom-Up Parsing
>         2.3.4 Syntax Errors
>
> Cheers,
>
> Marvin Humphrey
>

Re: [lucy-dev] Lucy Book Club

Posted by Marvin Humphrey <ma...@rectangular.com>.
On Mon, Jul 9, 2012 at 10:48 PM, Marvin Humphrey <ma...@rectangular.com> wrote:
> I'm still planning to be there at the original time, 7:00 pm PDT.
>
> As discussed in IRC, I'm cool with meeting twice on this material.

A makeup session which took place today at noon with 4 participants went very
well.  We had a mix of people who had read all, some, or none of chapter 1,
and everyone came away feeling like the discussion was time well spent.

(Two people were available on Tuesday night but we didn't end up meeting.
Nevertheless, I intend to keep showing up at the appointed time so that we
accumulate momentum and so that participants can have confidence that if you
put in the time to read up, someone will be there to discuss it with you.)

Google Plus Hangouts seems to be working well for us.  Join us in the
#lucy_dev IRC channel for connection instructions.

The next chapter is fairly long, so as discussed during today's session, we're
going to break it in half.

  Tuesday July 17, 7:00 pm PDT:

    2.1 Specifying Syntax: Regular Expressions and Context-Free Grammars
        2.1.1 Tokens and Regular Expressions
        2.1.2 Context-Free Grammars
        2.1.3 Derivations and Parse Trees
    2.2 Scanning
        2.2.1 Generating a Finite Automaton
        2.2.2 Scanner Code
        2.2.3 Table-Driven Scanning
        2.2.4 Lexical Errors
        2.2.5 Pragmas

  Tuesday July 24, 7:00 pm PDT:

    2.3 Parsing
        2.3.1 Recursive Descent
        2.3.2 Table-Driven Top-Down Parsing
        2.3.3 Bottom-Up Parsing
        2.3.4 Syntax Errors

Cheers,

Marvin Humphrey

Re: [lucy-dev] Lucy Book Club

Posted by Marvin Humphrey <ma...@rectangular.com>.
On Mon, Jul 9, 2012 at 7:45 PM, Logan Bell <lo...@gmail.com> wrote:
> I just found out I actually have a conflict for the time tomorrow. I can
> actually probably meet at 8:30 tomorrow night, or perhaps re-schedule to
> later this week if that works with folks. I apologize for the belated
> notice. I know we have one east coast person, so I don't know if 8:30 PDT
> would be too late?
>
> Maybe tomorrow night would make a good time to at least do a test run with
> google+ and see how it goes.

I'm still planning to be there at the original time, 7:00 pm PDT.

As discussed in IRC, I'm cool with meeting twice on this material.

Marvin

Re: [lucy-dev] Lucy Book Club

Posted by Logan Bell <lo...@gmail.com>.
I just found out I actually have a conflict for the time tomorrow. I can
actually probably meet at 8:30 tomorrow night, or perhaps re-schedule to
later this week if that works with folks. I apologize for the belated
notice. I know we have one east coast person, so I don't know if 8:30 PDT
would be too late?

Maybe tomorrow night would make a good time to at least do a test run with
google+ and see how it goes.

Thanks,
Logan

On Mon, Jul 9, 2012 at 7:25 PM, Marvin Humphrey <ma...@rectangular.com>wrote:

> On Mon, Jul 9, 2012 at 7:09 PM, Kurt Starsinic <ks...@gmail.com>
> wrote:
> > Have we finalized the date, time, and technical means of interconnection?
>
> Since nobody's asked for a different time, looks like we're set for
> tomorrow night: Tuesday July 10, 7:00 pm PDT.
>
> The videoconferencing technology is not yet decided, but we'll be in
> the #lucy_dev IRC channel.
>
> Marvin Humphrey
>

Re: [lucy-dev] Lucy Book Club

Posted by Marvin Humphrey <ma...@rectangular.com>.
On Mon, Jul 9, 2012 at 7:09 PM, Kurt Starsinic <ks...@gmail.com> wrote:
> Have we finalized the date, time, and technical means of interconnection?

Since nobody's asked for a different time, looks like we're set for
tomorrow night: Tuesday July 10, 7:00 pm PDT.

The videoconferencing technology is not yet decided, but we'll be in
the #lucy_dev IRC channel.

Marvin Humphrey

Re: [lucy-dev] Lucy Book Club

Posted by Kurt Starsinic <ks...@gmail.com>.
Have we finalized the date, time, and technical means of interconnection?
 - Kurt

On Thu, Jul 5, 2012 at 9:20 PM, Marvin Humphrey <ma...@rectangular.com>wrote:

> On Sat, May 26, 2012 at 8:57 AM, Logan Bell <lo...@gmail.com> wrote:
> > Marvin and myself are going to be hosting a Skype book club of sorts.
>
> > The book that we plan on reading through is "Programming Languages
> > Pragmatics":
> >
> http://www.amazon.com/Programming-Language-Pragmatics-Third-Edition/dp/0123745144/
>
> We've tentatively set next Tuesday, July 10 at 7:00 pm PDT for the meeting
> time to discuss chapter 1.
>
> There's some question as to whether we should use Skype, or perhaps Google
> Plus Hangouts instead.  Apparently if you use Skype for a teleconference
> with
> more than two participants, at least one participant needs to be a paying
> subscriber -- I'm happy to pony up myself, but that makes my participation
> mandatory, which is something we'd like to avoid.  A colleague of mine
> suggested Google Plus Hangouts as an alternative.
>
> Marvin Humphrey
>

Re: [lucy-dev] Lucy Book Club

Posted by Marvin Humphrey <ma...@rectangular.com>.
On Sat, May 26, 2012 at 8:57 AM, Logan Bell <lo...@gmail.com> wrote:
> Marvin and myself are going to be hosting a Skype book club of sorts.

> The book that we plan on reading through is "Programming Languages
> Pragmatics":
> http://www.amazon.com/Programming-Language-Pragmatics-Third-Edition/dp/0123745144/

We've tentatively set next Tuesday, July 10 at 7:00 pm PDT for the meeting
time to discuss chapter 1.

There's some question as to whether we should use Skype, or perhaps Google
Plus Hangouts instead.  Apparently if you use Skype for a teleconference with
more than two participants, at least one participant needs to be a paying
subscriber -- I'm happy to pony up myself, but that makes my participation
mandatory, which is something we'd like to avoid.  A colleague of mine
suggested Google Plus Hangouts as an alternative.

Marvin Humphrey

Re: [lucy-dev] Lucy Book Club

Posted by Marvin Humphrey <ma...@rectangular.com>.
Howdy, y'all...

On Sat, May 26, 2012 at 8:57 AM, Logan Bell <lo...@gmail.com> wrote:
> Marvin and myself are going to be hosting a Skype book club of sorts.

I'm excited about this, and about the book that Logan has picked out. :)

Regardless on whether you plan to read along, please feel free to drop in on
the #lucy_dev IRC channel during any of these virtual get-togethers and say
hello.  There are a lot of you that I'd love to meet or to introduce to each
other!

The book club format is something I've participated in numerous times before.
Right now at Eventful there's a group of us going through "Pro Git" by Scott
Chacon; since it's directly applicable to our daily work, the rewards for
learning the material are tangible and immediate.  It's great to have a
similar opportunity with the Lucy community and a book I've wanted to read for
a long time!

> Since a big portion of Lucy is built upon parsing and compiling to host
> languages, this could be an opportunity to both sharpen ones skills and also
> become more aware of the internals of Lucy itself.

There are three parsers in the Lucy codebase (if we exclude the
lexers/tokenizers among our Analyzers):

    * QueryParser
    * The Lemon-based JSON parser.
    * The Clownfish header parser, also Lemon-based.

JSON is a simple format which everyone already knows, so I can imagine us
pressing the JSON parser into service as example code for the chapter on
formal grammars.

> The book that we plan on reading through is "Programming Languages
> Pragmatics":
> http://www.amazon.com/Programming-Language-Pragmatics-Third-Edition/dp/0123745144/

The top review at Amazon provides a taste of what's in store:

    Over the years the Compilers: Principles, Techniques, and Tools (2nd
    Edition) (also knwon as the dragon book) has become the de facto standard
    for introducing compilers and related topics at universities. This is very
    unfortunate because "Programming Language Pragmatics" is in a completely
    different league and should be the one used instead. It gives the student
    (or the self taught) a complete and through overview of parsing, grammar,
    automata theory and other key language constructs. What really
    differentiates this book from others (and most notably the (in)famous
    "Dragon Book") is that it does so in a easy to understand manner and with
    lots of well written examples.

Marvin Humphrey