PanelTim Disney (twitter github blog) AJ O\u2019Neal (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Tim Caswell (twitter github howtonode.org) Charles Max Wood (twitter github Teach Me To Code)
Discussion
\xa001:23 - Book Club Episode: Effective JavaScript by David HermanEpisode will record on January 10th and air January 18th
01:48 - Sweet.jsMacros: syntactic transformations Build-your-own CoffeeScript Cleans up code
07:03 - Benefits and Disadvantages10:37 - Using MacrosWhere are they needed? Where are they not needed?
\xa0Why sweet.js Matters13:10 - Pattern Matching15:36 - Domain Specific Languages16:48 - Hygiene18:50 - Class Macro20:28 - Limits21:38 - Language Support25:18 - Nesting28:40 - Cool MacrosExample macros30:13 - Sweet.js: What is coming?Defining Macros Syntax Rules
33:06 - Sweet.js mailing listIRC channel #sweet.js on irc.mozilla.org
PicksGoogle+ Hangouts (AJ) The Man from Earth (Jamison) TypeScript (Joe) Red Dawn (Joe) Creationix Innovations (Tim C.) Effective JavaScript by David Herman (Tim D.) Growing a Language by Guy Steele (Tim D.) Downton Abbey (Chuck) Rails Ramp Up (Chuck)
Transcript
\xa0JAMISON:\xa0 Oh, my goodness! You can like, put a beard on them and it follows their face!JOE:\xa0 Isn\u2019t that awesome?[Crosstalk]JAMISON:\xa0 How do I get rid of it? Actually, it was really distracting. I didn\u2019t know you guys would see that.[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.][Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.]CHUCK:\xa0 Hey everybody and welcome to Episode 39 of the JavaScript Jabber show. This week on our panel, we have AJ O\u2019Neal. We have AJ O\u2019Neal on mute. We have Jamison Dance.JAMISON:\xa0 I am not on mute, I hope.CHUCK:\xa0 We have Joe Eames.JOE:\xa0 Hi everybody.CHUCK:\xa0 We have Tim Caswell.TIM C:\xa0 Hello.CHUCK:\xa0 We also have a special guest, that\u2019s Tim Disney.TIM D:\xa0 Hi.CHUCK:\xa0 AJ, did you figure out your mute issues? That would be a no. I\u2019m Charles Max Wood from Devchat.tv. And this week, we\u2019re going to be talking about Sweet.js.Before we get started, there is one thing I want to announce really quickly and that is that we have scheduled a Book Club episode for January 10th and that\u2019s going to be with David Herman who wrote \u2018Effective JavaScript\u2019. So it\u2019s a pretty slim book, should be easy to get through. But yeah, if you want to follow along with that discussion, then by all means, join in.Alright. Let\u2019s talk about Sweet.js. Has anyone\u2026AJ:\xa0 Can you hear me now?CHUCK:\xa0 Yeah.AJ:\xa0 Okay, cool.CHUCK:\xa0 So, I went and looked at it. I fiddled with it a little bit. I didn\u2019t have enough time to really get into it the way that I wanted to. It looks really cool though. What kind of gave you the idea of doing something like macros for JavaScript, Tim?TIM D:\xa0 Well, I guess it\u2019s just something I\u2019ve sort of wanted for JavaScript for awhile. But the main sort of impetus I guess was, I was interning at Mozilla Research this past summer. And Dave Herman who has worked on macros in the past basically said he thought that it was sort of finally possible to do for JavaScript. And so, that was a possible sort of intern project for the summer. And so, that\u2019s what got it started.JAMISON:\xa0 So can you back up and talk about what macros are, because I\u2019m sure there are lots of people that don\u2019t know and lots of people that hear macros and think like CP process are macros.TIM D:\xa0 Right yeah, exactly. So, C style macros are the sort of painful and sort of limited. The macros that Sweet.js implements are much more in line with sort of scheme style macros. So,Special Guest: Tim Disney.
Support this podcast at \u2014 https://redcircle.com/javascript-jabber/donations
Privacy & Opt-Out: https://redcircle.com/privacy
Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.