We talk with Lucas San Román about his library Sourceror and how it was created to solve some AST parsing limitations. The Elixir parser discards code comments, so it can’t be used for re-writing Elixir code when refactoring. IDE’s often include more advanced refactoring tools and the ability to provide that requires a smarter parser. Sourceror keeps the comments while also providing advanced features like a Zipper API to more easily navigate around the source tree while inserting and removing nodes. Learn what Sourceror can do and what it can enable for future Elixir tools!
Show Notes online - http://podcast.thinkingelixir.com/54 (http://podcast.thinkingelixir.com/54)
Elixir Community News
- https://www.elixirconf.eu/ (https://www.elixirconf.eu/) – ElixirConfEU will be in Warsaw Poland on September 9-10
- https://2021.elixirconf.com/ (https://2021.elixirconf.com/) – ElixirConf US 2021 ElixirConf US 2021 is being held in Austin, TX October 12-13 and Online, October 14-15
- https://github.com/phoenixframework/phoenixliveview/pull/1490 (https://github.com/phoenixframework/phoenix_live_view/pull/1490) – livesession for optimized live navigation purely over websockets PR was merged and had docs
- https://github.com/livewire/livewire/commit/5cffdbfe4204e0d932cde6f8c9bdf63f0928b4d4#diff-7ce6ac695f53fd2e2c50f1f962b00fb2da5cdf2576a1c1d6eeacca29f34b6024R291 (https://github.com/livewire/livewire/commit/5cffdbfe4204e0d932cde6f8c9bdf63f0928b4d4#diff-7ce6ac695f53fd2e2c50f1f962b00fb2da5cdf2576a1c1d6eeacca29f34b6024R291) – Alpine V3 released
- https://twitter.com/bernheisel/status/1404832454536478722 (https://twitter.com/bernheisel/status/1404832454536478722) – Need to update your Phoenix LiveView hook for Alpine V3
- https://github.com/erlang/otp/pull/4869 (https://github.com/erlang/otp/pull/4869) – ARM support for OTP24/JIT was merged a couple weeks ago
- https://twitter.com/josevalim/status/1405586165315604486 (https://twitter.com/josevalim/status/1405586165315604486) – Livebook 0.2 released
- https://youtu.be/MOTEgF-wIEI?t=1132 (https://youtu.be/MOTEgF-wIEI?t=1132) – Jose Valim's demo video - time signature to the Kino section
- https://twitter.com/josevalim/status/1407084358750572548 (https://twitter.com/josevalim/status/1407084358750572548) – Tweet thread showing Kino datatable and execution timing display
- https://github.com/kentaro/offbroadwayotp_distribution (https://github.com/kentaro/off_broadway_otp_distribution) – offbroadwayotp_distribution library
- https://twitter.com/gleamlang/status/1405504902655361024 (https://twitter.com/gleamlang/status/1405504902655361024) – Gleam 0.16 released and can now compile to Javascript
- https://gleam.run/news/v0.16-gleam-compiles-to-javascript/ (https://gleam.run/news/v0.16-gleam-compiles-to-javascript/) – Gleam release announcement
- https://github.com/phoenixframework/phoenix/pull/4337 (https://github.com/phoenixframework/phoenix/pull/4337) – Asset Pipeline rewrite merged
- https://youtu.be/vdhK0QPN61E?t=839 (https://youtu.be/vdhK0QPN61E?t=839) – Elixir Roundtable 3 discussion talks about the JS woes. Time signature links to the mentioned part of the discussion.
- https://twitter.com/MarlusSaraiva/status/1405621630597013508 (https://twitter.com/MarlusSaraiva/status/1405621630597013508) – Surface 0.5 released
- https://surface-ui.org/template_syntax (https://surface-ui.org/template_syntax) – Surface's new template syntax
- https://github.com/surface-ui/surface/blob/master/MIGRATING.md (https://github.com/surface-ui/surface/blob/master/MIGRATING.md) – Surface migration guide
Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at [email protected] (mailto:[email protected])
Discussion Resources
- https://github.com/doorgan/sourceror (https://github.com/doorgan/sourceror)
- https://twitter.com/bostonvaulter/status/1403055559612375041 (https://twitter.com/bostonvaulter/status/1403055559612375041)
- https://www.youtube.com/watch?v=aM0BLWgr0g4 (https://www.youtube.com/watch?v=aM0BLWgr0g4) – Arjan Scherpenisse - The Elixir parser under the microscope - ElixirConfEU
- https://groups.google.com/u/1/g/elixir-lang-core/c/GM0yM5Su1Zc/m/poIKsiEVDQAJ (https://groups.google.com/u/1/g/elixir-lang-core/c/GM0yM5Su1Zc/m/poIKsiEVDQAJ)
- https://github.com/elixir-lsp/elixir-ls (https://github.com/elixir-lsp/elixir-ls)
- https://dorgan.netlify.app/posts/2021/04/theelixirast/ (https://dorgan.netlify.app/posts/2021/04/the_elixir_ast/)
- https://github.com/andyl/rfx (https://github.com/andyl/rfx)
- Tonći Galić
Guest Information
- https://twitter.com/dorgandash1 (https://twitter.com/dorgandash1) – on Twitter
- https://github.com/doorgan/ (https://github.com/doorgan/) – on Github
- https://dorgan.netlify.app/ (https://dorgan.netlify.app/) – Blog
Find us online
- Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir)
- Email the show - [email protected] (mailto:[email protected])
- Mark Ericksen - @brainlid (https://twitter.com/brainlid)
- David Bernheisel - @bernheisel (https://twitter.com/bernheisel)
- Cade Ward - @cadebward (https://twitter.com/cadebward)

We talk with Lucas San Román about his library Sourceror and how it was created to solve some AST parsing limitations. The Elixir parser discards code comments, so it can’t be used for re-writing Elixir code when refactoring. IDE’s often include more advanced refactoring tools and the ability to provide that requires a smarter parser. Sourceror keeps the comments while also providing advanced features like a Zipper API to more easily navigate around the source tree while inserting and removing nodes. Learn what Sourceror can do and what it can enable for future Elixir tools!

Show Notes online - http://podcast.thinkingelixir.com/54

Elixir Community News

https://www.elixirconf.eu/ – ElixirConfEU will be in Warsaw Poland on September 9-10
https://2021.elixirconf.com/ – ElixirConf US 2021 ElixirConf US 2021 is being held in Austin, TX October 12-13 and Online, October 14-15
https://github.com/phoenixframework/phoenix_live_view/pull/1490 – live_session for optimized live navigation purely over websockets PR was merged and had docs
https://github.com/livewire/livewire/commit/5cffdbfe4204e0d932cde6f8c9bdf63f0928b4d4#diff-7ce6ac695f53fd2e2c50f1f962b00fb2da5cdf2576a1c1d6eeacca29f34b6024R291 – Alpine V3 released
https://twitter.com/bernheisel/status/1404832454536478722 – Need to update your Phoenix LiveView hook for Alpine V3
https://github.com/erlang/otp/pull/4869 – ARM support for OTP24/JIT was merged a couple weeks ago
https://twitter.com/josevalim/status/1405586165315604486 – Livebook 0.2 released
https://youtu.be/MOTEgF-wIEI?t=1132 – Jose Valim's demo video - time signature to the Kino section
https://twitter.com/josevalim/status/1407084358750572548 – Tweet thread showing Kino data_table and execution timing display
https://github.com/kentaro/off_broadway_otp_distribution – off_broadway_otp_distribution library
https://twitter.com/gleamlang/status/1405504902655361024 – Gleam 0.16 released and can now compile to Javascript
https://gleam.run/news/v0.16-gleam-compiles-to-javascript/ – Gleam release announcement
https://github.com/phoenixframework/phoenix/pull/4337 – Asset Pipeline rewrite merged
https://youtu.be/vdhK0QPN61E?t=839 – Elixir Roundtable 3 discussion talks about the JS woes. Time signature links to the mentioned part of the discussion.
https://twitter.com/MarlusSaraiva/status/1405621630597013508 – Surface 0.5 released
https://surface-ui.org/template_syntax – Surface's new template syntax
https://github.com/surface-ui/surface/blob/master/MIGRATING.md – Surface migration guide

Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected]

Discussion Resources

https://github.com/doorgan/sourceror
https://twitter.com/bostonvaulter/status/1403055559612375041
https://www.youtube.com/watch?v=aM0BLWgr0g4 – Arjan Scherpenisse - The Elixir parser under the microscope - ElixirConfEU
https://groups.google.com/u/1/g/elixir-lang-core/c/GM0yM5Su1Zc/m/poIKsiEVDQAJ
https://github.com/elixir-lsp/elixir-ls
https://dorgan.netlify.app/posts/2021/04/the_elixir_ast/
https://github.com/andyl/rfx
Tonći Galić

Guest Information

https://twitter.com/dorgandash1 – on Twitter
https://github.com/doorgan/ – on Github
https://dorgan.netlify.app/ – Blog

Find us online

Message the show - @ThinkingElixir
Email the show - [email protected]
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Twitter Mentions