054 JSJ JavaScript Parsing, ASTs, and Language Grammar w/ David Herman and Ariya Hidayat

JavaScript Jabber

Episode | Podcast

Date: Fri, 05 Apr 2013 07:00:00 +0000

<div class="trix-content"> <div>Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013!</div><div>Panel</div><pre>David Herman (twitter blog Effective JavaScript) Ariya Hidayat (twitter github blog) Tim Caswell (twitter github howtonode.org) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) <br /></pre><div>Discussion<br /> 00:48 - David Herman and Ariya Hidayat Introduction</div><pre>044 JSJ Book Club: Effective JavaScript with David Herman 023 JSJ Phantom.js with Ariya Hidayat <br /></pre><div>01:54 - Parsing JavaScript and ASTs and Language Grammars<br /> 04:44 - Semantics<br /> 06:08 - Abstract Syntax Tree (AST)</div><pre>Esprima: Parser SpiderMonkey <br /></pre><div>10:37 - Lexer<br /> 12:16 - Writing your own language</div><pre>creationix / jack The C Programming Language <br /></pre><div>17:41 - Parser Generators</div><pre>JavaScriptCore <br /></pre><div>21:04 - Evolving a Syntax<br /> Automatic Semicolon Insertion</div><pre>Post correspondence problem Halting problem <br /></pre><div>28:05 - Language Design</div><pre>The Rust Programming Language <br /></pre><div>30:35 - Grammar</div><pre>Regular Expressions (Regex) Backus–Naur Form (BNF) Recursion How to Design Programs (HTDP) <br /></pre><div>38:00 - Recursive Descent Parsers<br /> 42:48 - Benefits of knowing language internals and syntax</div><pre>Apache Lucene - Apache Lucene Core LPeg - Parsing Expression Grammars For Lua <br /></pre><div>48:48 - Abstract Syntax Tree (AST)</div><div>Picks</div><pre>Mass Effect 3 (Joe) A Beginner's Guide to Irrational Behavior | Coursera (Joe) Go write a programming language to learn one (Tim) Thumbs and Ammo (Jamison) ISM by Savant (Jamison) Vimcasts (Jamison) The iPhreaks Show (Chuck) Mozy (Chuck) Tech &amp; Go Bright Pink Micro USB Cable (David) asm.js (David) Beyond Office Politics: The Hidden Story of Power, Affiliation &amp; Achievement in the Workplace by Linda Sommer (Ariya) gotwarlost / istanbul (Ariya) <br /></pre><div>Next Week<br /> Web Developer Skills<br /> Transcript<br /> JAMISON:  I am Linus Torvalds and I pronounce Linux, Linix.</div><div>[Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.]</div><div>[This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.]</div><div>CHUCK:  Hey everybody and welcome to Episode 54 of the JavaScript Jabber Show. This week on our panel, we have Tim Caswell.</div><div>TIM:  Hello.</div><div>CHUCK:  Jamison Dance.</div><div>JAMISON:  Hi guys.</div><div>CHUCK:  Joe Eames.</div><div>JOE:  Hey there.</div><div>CHUCK:  Merrick Christensen.</div><div>MERRICK:  Hey guys, what’s up?</div><div>CHUCK:  I’m Charles Max Wood from DevChat.tv. And we have two special guests this week. We have Dave Herman.</div><div>DAVID:  Hey there.</div><div>CHUCK:  Ariya Hidayat.</div><div>ARIYA:  Hello everyone.</div><div>CHUCK:  And these guys are so smart that we brought them back. So, if you’re interested, we’ll put links to the episodes that they were on. David was on when we talked about his book ‘Essential JavaScript’ and Ariya was on when we talked about PhantomJS.</div><div>JAMISON:  Effective JavaScript.</div><div>CHUCK:  Effective? What did I say?</div><div>MERRICK:  Essential.</div><div>CHUCK:  Essential? Well, it’s an essential book on Effective JavaScript. How’s that?</div><div>[Laughter]</div><div>MERRICK:  Good save.</div><div>DAVID:  At least, you didn’t say Defective JavaScript.</div><div>[Laughter]</div><div>CHUCK:  No, that’s what I write. I’m really good at writing defective JavaScript.</div><div>ARIYA:  Actually, there’s a book about Essential on Defective JavaScript.</div><div>CHUCK:  I also want to announce really quickly that Fluent Conf has given u... Support this podcast at — https://redcircle.com/javascript-jabber/donations Advertising Inquiries: https://redcircle.com/brands Privacy & Opt-Out: https://redcircle.com/privacy