Skip to content
HomeVideosBooks
AllTopicsTrends
BlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    Cover of The Definitive ANTLR Reference

    The Definitive ANTLR Reference

    Terence Parr · 2011

    A definitive guide to using the latest verson of the parser generator covers such topics as grammar syntax, resolving grammar ambiguities, parser fault tolerance and error reporting, and generating source code.

    Computer ScienceProgramming
    Open LibraryAmazon
    Stats for nerds
    5recommend
    8mentions
    7people
    2010–2020years
    75% recommend25% neutral

    Mentions per year

    201020122014201620182020

    What Hacker News says

    1. throwaway_pdp09Nov 2020
      Well, this is (one of my) areas so here goes. DSLs are a concept, not an implementation. As implemented they can vary from chained procedure calls to actual sub languages with lexers and parsers (and I tend to consider the latter to be 'proper' DSLs, but that's just my view).

      To have a 'proper' DSL I reckon you need two things, and understanding that a thing can and should be broken out into its own sublanguage, and the ability to do so. The first takes a certain kind of nouse, or common sense. The latter requires knowing how to construct a parser properly and some knowledge of language design.

      Knowing how to write a parser is not particularly complex but as the industry is driven by requirements more of knowing 'big data' frameworks rather than stuff that is often more useful, well, that's what you get, and that includes people who try to parse XML with regular expressions (check out this classic answer <https://stackoverflow.com/questions/1732348/regex-match-open...> Edit: if you haven't seen this check it out cos it's brilliant).

      I think this reflects the fundamental problem in software development of the market's not knowing what's actually needed to solve real business problems.

      ++++

      Edit, some reading material

      https://www.amazon.co.uk/Language-Implementation-Patterns-Do...

      https://www.amazon.co.uk/Definitive-ANTLR-Reference-Domain-S...

      https://www.amazon.co.uk/yacc-Nutshell-Handbook-Doug-Brown/d...

      They're all worth investing the time in.

      thread
    2. breckNov 2020
      Yes, it walks your through it step by step. I have https://pragprog.com/titles/tpantlr2/the-definitive-antlr-4-... and at least 1 more of his, forget where it is. I would say it is ageless (at least, until something better than ANTLR comes along—ohm is promising but not sure what the latest is with that).

      "The Definitive ANTLR 4 Reference" is absolutely the most understated title I've ever seen in a book. It's really more like "The Book That Will Change How you Look at Programming Languages Forever"

      IMO anyway. I guess it depends on how much you've been exposed to parsers and grammars and compiler compilers already.

      thread
    3. CalChrisDec 2017
      Nothing on compilers.

        Dragon Book
        LLVM Essentials
      
      Nothing on machine organization and assembly.

        Computer Organization and Design
        ARM Cortex A72 Software Optimization Guide
        Intel® 64 and IA-32 Architectures Optimization Reference Manual
        The microarchitecture of Intel, AMD and VIA CPUs
      
      Parsing

        Language Implementation Patterns
        The Definitive ANTLR 4 Reference
      thread
    4. CalChrisMar 2017
      I switched over to ANTLR 4. It is strictly superior to ANTLR 3. The listener approach rather than embedding code in the grammar is very natural. Separating leads to clean grammars and clean action code. Odd thing is that I was stuck on 3 because 4 didn't support C yet and then I just switched to the Java target in an anti-C pique. Shoulda done that awhile ago.

      TParr's The Definitive ANTLR 4 Reference is quite good. And so's this mega tutorial.

      https://pragprog.com/book/tpantlr2/the-definitive-antlr-4-re...

      ANTLR is my goto tool for DSLs.

      thread
    5. dchichkovAug 2013
      To anyone who haven't red "The Definitive ANTLR reference" by Terrence Par. I can highly recommend it. It is beautiful.

      http://www.antlr.org/wiki/display/ANTLR4/ANTLR+4+Documentati...

      thread
    6. pellaAug 2011
      The Definitive ANTLR Reference: Building Domain-Specific Languages

      http://pragprog.com/book/tpantlr/the-definitive-antlr-refere...

      -- + --

      Language Implementation Patterns: Create Your Own Domain-Specific and General Programming Languages

      "Learn to build configuration file readers, data readers, model-driven code generators, source-to-source translators, source analyzers, and interpreters. You don’t need a background in computer science—ANTLR creator Terence Parr demystifies language implementation by breaking it down into the most common design patterns. Pattern by pattern, you’ll learn the key skills you need to implement your own computer languages." http://pragprog.com/book/tpdsl/language-implementation-patte...

      thread

    Related

    Cover of Language Implementation Patterns
    2010–2025

    Language Implementation Patterns

    Terence Parr
    18 recommend · 31
    Cover of Software fundamentals
    2019–2025

    Software fundamentals

    David Lorge Parnas
    4 recommend · 10
    Cover of Compilers, principles, techniques, and tools
    2007–2026

    Compilers, principles, techniques, and tools

    Alfred V. Aho
    195 recommend · 958
    Cover of Code Complete
    2007–2026

    Code Complete

    Steve McConnell
    393 recommend · 894
    Cover of Linkers and loaders
    2008–2026

    Linkers and loaders

    John R. Levine
    29 recommend · 45
    Cover of The art of computer programming
    2007–2026

    The art of computer programming

    Donald Knuth
    336 recommend · 1,799
    Cover of Types and Programming Languages
    2008–2026

    Types and Programming Languages

    Benjamin C. Pierce
    132 recommend · 321
    Cover of Code
    2008–2026

    Code

    Charles Petzold
    243 recommend · 385