Climbing the Abstract Syntax Tree

James Titcumb (12.May.2017 at 11:00, 1 hr )
Talk at phpDay 2017 (English - UK)

Rating: 5 of 5

The new Abstract Syntax Tree (AST) in PHP 7 means the way our PHP code is being executed has changed. Understanding this new fundamental compilation step is key to understanding how our code is being run.

To demonstrate, James will show how a basic compiler works and how introducing an AST simplifies this process. We’ll look into how these magical time-warp techniques* can also be used in your code to introspect, analyse and modify code in a way that was never possible before.

After seeing this talk, you'll have a great insight as to the wonders of an AST, and how it can be applied to both compilers and userland code.

(*actual magic or time-warp not guaranteed)

Who are you?

Claim talk

Talk claims have been moved to the new site.

Please login to the new site to claim your talk

Comments closed.


Rating: 5 of 5

12.May.2017 at 11:51 by Alessandro Lai (84 comments) via Android app

Very complicated topic; the talk started obscure, but by the end it was very clear and informative.

Rating: 5 of 5

12.May.2017 at 12:03 by Nicole Bartolini (43 comments) via Web2 LIVE

Difficult topic but we'll explained
Some slide were difficult to read from the back lines

Rating: 4 of 5

12.May.2017 at 14:50 by Stefano "Steve" Maraspin (114 comments) via Web2 LIVE

Well explained, with a nice refresher of several compiler class concepts. Not about something which can be used for your everyday job, but it's always good to know how tings work under the hood. IMHO the talk could be improved even more with a few more hints about implications and benefits of the AST; both from a user, and language point of view. Glad of having attended, though.

Rating: 4 of 5

12.May.2017 at 15:50 by Michele Carino (5 comments) via Web2 LIVE

Interesting insigths on php code meta analisys tools.

Rating: 4 of 5

12.May.2017 at 16:08 by Emiliano 'AlberT' Gabrielli (20 comments) via Web2 LIVE

Nice informative talk. I'd have appreciated even more if it would have outlined some real world/ daily coding use cases for which the knowledge of these concepts can effectively improve our coding style and/or performance.


Rating: 5 of 5

12.May.2017 at 17:14 by Frederick Vanbrabant (23 comments) via Web2 LIVE

Learned a lot of things I haven't thought about in the past. Cool stuff

Rating: 5 of 5

12.May.2017 at 20:21 by Matteo Riva (11 comments) via Web2 LIVE

Very clear and informative. James explained the basics of a compiler in a very concise and easy to understand way.

Rating: 4 of 5

12.May.2017 at 22:15 by Andy Johnson (16 comments) via Web2 LIVE

It was ok

Rating: 5 of 5

13.May.2017 at 16:02 by Giorgio Sironi (75 comments) via Web2 LIVE

These topics will stay with you, improving the mental model of how PHP works under the hood.

Rating: 4 of 5

14.May.2017 at 13:07 by Richard Fussenegger (5 comments) via Web2 LIVE

Very good talk with an easy to understand explanation of things. There were a few super tiny errors, and I think that it should be made clearer why an AST is so much better than operating on a token stream directly (e.g. revisiting of nodes, attaching extra info, down/up optimizations, etc.).

© 2018