com presentations: php Central Europe talks: jump-phpce17.xml php-ext-phpce17.xml
[email protected] (Derick Rethans) Tue, 31 Oct 2017 13:30:10 +0000
| Newsgroups | php.pres |
|---|---|
| Message-ID | <[email protected]> |
Commit: 77701e0105dcb1851d9487afeb957f2632f41c48 Author: Derick Rethans <[email protected]> Tue, 31 Oct 2017 13:30:10 +0000 Parents: f319bd47002253bddefb7b479d1760ef2b9d4812 Branches: master Link: http://git.php.net/?p=presentations.git;a=commitdiff;h=77701e0105dcb1851d9487afeb957f2632f41c48 Log: php Central Europe talks Changed paths: A jump-phpce17.xml A php-ext-phpce17.xml Diff: diff --git a/jump-phpce17.xml b/jump-phpce17.xml new file mode 100644 index 0000000..9c4a167 --- /dev/null +++ b/jump-phpce17.xml @@ -0,0 +1,116 @@ +<?xml version="1.0" encoding="utf-8"?> +<presentation css="10gen-strict.css"> +<topic>PHP</topic> +<title>It's All About the Goto</title> +<event>php Central Europe</event> +<location>Warsaw, Poland</location> +<date>November 4th, 2017</date> +<speaker>Derick Rethans</speaker> +<email>[email protected]</email> +<twitter>derickr</twitter> +<joindin>https://joind.in/22466</joindin> + +<slide>slides/mongodb/title.xml</slide> +<slide>slides/mongodb/me.xml</slide> + +<slide>slides/internals/title-agenda.xml</slide> + +<slide>slides/internals/title-stages.xml</slide> +<!-- INTRODUCTION +Compile stages: +Parse script +Create AST +Convert to opcodes +Run the code +Opcache for caching +--> +<slide>slides/internals/stages.xml</slide> + +<!-- STAGES +Parse +- Show parser rules +- Show "compiler" rules +--> + +<slide>slides/internals/title-parsing.xml</slide> +<slide>slides/internals/parse-state-machine.xml</slide> +<slide>slides/internals/parse-tokenization.xml</slide> +<slide>slides/internals/scanner.xml</slide> +<slide>slides/internals/scanner-rules.xml</slide> +<slide>slides/internals/ast.xml</slide> +<slide>slides/internals/ast1.xml</slide> +<slide>slides/internals/scanner-ast.xml</slide> +<slide>slides/internals/scanner-ast2.xml</slide> +<slide>slides/internals/bytecode0.xml</slide> +<slide>slides/internals/bytecode½.xml</slide> +<slide>slides/internals/bytecode1.xml</slide> + +<slide>slides/internals/jumps.xml</slide> + +<!-- +AST +- Show AST for various control structures + +Opcodes +- Show AST for the same control structures +--> + +<slide>slides/internals/jumps-if.xml</slide> +<slide>slides/internals/jumps-if-else.xml</slide> + +<slide>slides/internals/rings.xml</slide> +<slide>slides/internals/jumps-for.xml</slide> +<slide>slides/internals/jumps-for-rewritten.xml</slide> +<slide>slides/internals/jumps-while.xml</slide> +<slide>slides/internals/jumps-do-while.xml</slide> +<slide>slides/internals/jumps-foreach.xml</slide> +<slide>slides/internals/jumps-complex.xml</slide> +<slide>slides/internals/loops.xml</slide> +<slide>slides/internals/jumps-complex-dot.xml</slide> + +<!-- +Try/Catch nonsense +- FASTCALL/FASTRET +--> +<slide>slides/internals/catch.xml</slide> +<slide>slides/internals/jumps-try-catch.xml</slide> + +<!-- +Dead code analysis +- Show how Xdebug does it through VLD +--> +<slide>slides/internals/deadcode.xml</slide> +<slide>slides/internals/deadcode-vld.xml</slide> + +<!-- +Path analysis +- Branch and Path +--> +<slide>slides/internals/branches.xml</slide> +<slide>slides/xdebug/vld-path-2-paths.xml</slide> +<slide>slides/xdebug/vld-path-4-code.xml</slide> +<slide>slides/xdebug/vld-path-4-output.xml</slide> + +<slide>slides/xdebug/vld-path-3-code.xml</slide> +<slide>slides/xdebug/vld-path-3-output.xml</slide> +<slide>slides/xdebug/vld-path-3-paths.xml</slide> + +<!-- Conclusion + +Code -> Tokens -> AST -> opode + +Transformation of control structures + +Useful implementations + +--> +<slide>slides/internals/recap.xml</slide> +<slide>slides/internals/recap-content.xml</slide> + + + +<slide>slides/mongodb/questions.xml</slide> + +<slide>slides/mongodb/resources.xml</slide> + +</presentation> diff --git a/php-ext-phpce17.xml b/php-ext-phpce17.xml new file mode 100644 index 0000000..6698a35 --- /dev/null +++ b/php-ext-phpce17.xml @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="utf-8"?> +<presentation css="10gen-strict.css"> +<topic>PHP</topic> +<title>Introduction into PHP Extensions</title> +<event>php Central Europe</event> +<location>Warsaw, Poland</location> +<date>November 45th, 2017</date> +<speaker>Derick Rethans</speaker> +<email>[email protected]</email> +<twitter>derickr</twitter> +<url>http://derickrethans.nl/talks.html</url> +<joindin>https://joind.in/22458</joindin> +<slide>slides/mongodb/title.xml</slide> +<slide>slides/mongodb/me.xml</slide> + +<slide>slides/internals/extension-agenda.xml</slide> +<slide>slides/internals/extension-agenda2.xml</slide> +<slide>slides/internals/extension-what1.xml</slide> +<slide>slides/internals/extension-why1.xml</slide> +<slide>slides/internals/extension-why-wrap.xml</slide> +<slide>slides/internals/extension-why-not-possible.xml</slide> +<slide>slides/internals/extension-why-speed.xml</slide> + +<slide>slides/internals/rdp-intro.xml</slide> +<slide>slides/internals/rdp-intro2.xml</slide> +<slide>slides/internals/rdp-intro3.xml</slide> +<slide>slides/internals/rdp-intro4.xml</slide> + +<slide>slides/internals/extension-parts.xml</slide> +<slide>slides/internals/extension-on-a-slide.xml</slide> +<slide>slides/internals/config.m4.xml</slide> +<slide>slides/internals/config.w32.xml</slide> +<slide>slides/internals/phpize.xml</slide> + +<slide>slides/internals/extension.h.xml</slide> +<slide>slides/internals/extension.c-part1.xml</slide> +<slide>slides/internals/extension.c-part2.xml</slide> +<slide>slides/internals/extension.c-part3.xml</slide> + +<slide>slides/internals/function.xml</slide> +<slide>slides/internals/rdp_simplify-part1.xml</slide> +<slide>slides/internals/rdp_simplify-zedval.xml</slide> +<slide>slides/internals/rdp_simplify-part1b.xml</slide> +<slide>slides/internals/rdp_simplify-convert-data.xml</slide> +<slide>slides/internals/rdp_simplify-run-algorithm.xml</slide> +<slide>slides/internals/rdp_simplify-php.xml</slide> +<slide>slides/internals/rdp_simplify-c.xml</slide> +<slide>slides/internals/rdp_simplify-return-result.xml</slide> +<slide>slides/internals/rdp_simplify-return-scalars.xml</slide> +<slide>slides/internals/memory-management.xml</slide> + +<slide>slides/internals/tests.xml</slide> +<slide>slides/internals/rdp-test.xml</slide> + +<slide>slides/mongodb/questions.xml</slide> +<slide>slides/mongodb/resources.xml</slide> +</presentation>