Clojure Goes Brrr: a quest for performance (by Oleksandr Yakushev)

Поделиться
HTML-код
  • Опубликовано: 7 фев 2025
  • The London Clojurians are happy to present:
    Title: Clojure Goes Brrr: a quest for performance
    Speaker: Oleksandr Yakushev
    Oleksandr Yakushev ( / unlog1c ) will be presenting:
    "Clojure Goes Brrr: a quest for performance"
    Oleksandr will do a live demo of using the tools from
    Clojure Goes Fast umbrella to tackle a life-like programming task. He
    will show how these tools interoperate and complement each other, and
    how to integrate them into your regular development workflow.
    Oleksandr has been involved in the Clojure community since 2012. He
    has spent seven years at Grammarly using Clojure full-time for
    NLP-related performance-critical tasks. For the last year, Oleksandr
    has been serving in the Armed Forces of Ukraine.
    Links at the end of the talk:
    clojure-goes-fa...
    github.com/clo...
    github.com/clo...
    github.com/clo...
    github.com/zte...
    gist.github.co...
    If you missed this event, you can watch the recording on our RUclips channel:
    / @londonclojurians
    (The recording will be uploaded a couple of days after the event.)
    Please, consider supporting the London Clojurians with a small donation:
    opencollective...
    Your contributions will enable the sustainability of the London
    Clojurians community and support our varied set of online and
    in-person events:
    ClojureBridge London: supports under-represented groups discover Clojure
    re:Clojure: our *free* to attend annual community conference
    monthly meetup events with speakers from all over the world
    subscription and admin costs such as domain name & Zoom plan for
    larger online meetups
    Thank you to our sponsors:
    juxt.pro/
    flexiana.com/
    gaiwan.co/
    freshcodeit.com/
    nette.io/
    nilenso.com/
    And many individual sponsors

Комментарии •

  • @mehdihajjam6655
    @mehdihajjam6655 Год назад +8

    Great talk, thanks for all this wisdom - pure gold distilled here. Wishing you luck and success in your current mission. 🇺🇦

  • @aloha_holahola
    @aloha_holahola Год назад

    Londrina Solid and clojure backends! This is my jammmm!

  • @nem0ra
    @nem0ra Год назад

    nice talk! , questions: 1) do you have a fancy way to live-add :deps or was your deps.edn pre-prepared? and 2) any particular reason for the java-class, has it better performance than proxy/proxy-super ?

    • @AlexanderYakushev
      @AlexanderYakushev Год назад +3

      Thank you!
      1. In this demonstration, I had all the necessary dependencies in place ahead of time. But I, in fact, indeed have a fancy way to add dependencies on the fly. It is quite brittle at the moment, so I can't really recommend it. However, this is about to change since the latest version of Clojure ships some functions for dynamic deps loading, so we will have an official way to do that soon.
      2. I planned to show the proxy solution too but had to cut it out due to lack of time. Calling proxy-super brings noticeable overhead because it calls `update-proxy` internally and modifies some immutable maps. You are welcome to try for yourself! I think, gen-class could be used here for the same performance as pure Java solution, but I also wanted to use this as a usecase for showing off Virgil.