Thinking Elixir Podcast

54: AST Parsing using Sourceror with Lucas San Román


Listen Later

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
        • ...more
          View all episodesView all episodes
          Download on the App Store

          Thinking Elixir PodcastBy ThinkingElixir.com

          • 4.9
          • 4.9
          • 4.9
          • 4.9
          • 4.9

          4.9

          32 ratings


          More shows like Thinking Elixir Podcast

          View all
          Hanselminutes with Scott Hanselman by Scott Hanselman

          Hanselminutes with Scott Hanselman

          377 Listeners

          Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

          Software Engineering Radio - the podcast for professional software developers

          272 Listeners

          The Changelog: Software Development, Open Source by Changelog Media

          The Changelog: Software Development, Open Source

          283 Listeners

          Talk Python To Me by Michael Kennedy

          Talk Python To Me

          592 Listeners

          Software Engineering Daily by Software Engineering Daily

          Software Engineering Daily

          624 Listeners

          Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

          Syntax - Tasty Web Development Treats

          982 Listeners

          REWORK by 37signals

          REWORK

          211 Listeners

          CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

          CoRecursive: Coding Stories

          189 Listeners

          Elixir Mix by Charles M Wood

          Elixir Mix

          13 Listeners

          Elixir Wizards by SmartLogic LLC

          Elixir Wizards

          22 Listeners

          The Stack Overflow Podcast by The Stack Overflow Podcast

          The Stack Overflow Podcast

          64 Listeners

          Beam Radio by Lars Wikman

          Beam Radio

          11 Listeners

          Oxide and Friends by Oxide Computer Company

          Oxide and Friends

          47 Listeners

          Elixir Mentor by Jacob Luetzow

          Elixir Mentor

          2 Listeners

          The Pragmatic Engineer by Gergely Orosz

          The Pragmatic Engineer

          52 Listeners