Programming Language Extension Without Obfuscation (BOBKonf 2024)

แชร์
ฝัง
  • เผยแพร่เมื่อ 10 พ.ค. 2024
  • 00:00 Computation Expressions (Theory)
    05:48 Examples
    09:44 See 'Vide: React-Like UIs for Avalonia' in Action
    (This is the 1st part of David's and my contribution to BOBKonf 2024)
    Granted: A good programming language is typically much more than just the sum of its individual features. And yet, sometimes it’s worth taking a closer look: “Computation Expressions” (CEs) from F# are an existing language element that manages to combine flexibility and simplicity in an amazing way.
    Sounds like a nice, theoretical little game? They certainly are - and much more: A practical and much-used concept in libraries and in the F# compiler itself. While similar ideas like the “do” notation known from Haskell provide language support for monads, CEs go much further. They allow to reinterpret idiomatic language constructs and give room to control the execution and evaluation for distinct computations themselves.
    Compared to alternative concepts such as language macros or compiler plug-ins, CEs do not create “languages within the language” which tend to erode a common “basis of intelligibility” among participating developers. Rather, the original, intentional character of all language constructs from the user’s point of view remains untouched. Hence CEs are a powerful tool that lives in the sweet spot between versatility and quick and easy adoption.
    Links
    ===
    The source code and solutions for the "Tutorial" part:
    github.com/dawedawe/bobkonf2024
    "Vide" - Vide offers a unique approach for writing state-aware functions and composing them in a convenient and easy way. It is used for UI libraries targeting various platforms and technologies, streaming / DSP, workflow engines and perhaps more.
    github.com/vide-collabo/Vide
    Socials
    ======
    Twitter / X: / schlenkr
    GitHub: github.com/SchlenkR
    Threads: threads.net/@schlenkr.dev
    👉 Don't forget to like, share, and subscribe for more content on modern programming concepts. Drop your questions and feedback in the comments section below and join our growing community of innovative programmers!
    ===
    #csharp #dotnet #functionalProgramming #functionalCSharp #fsharp #dotnetconf #csharptutorial #csharpprogramming #typescript #moonads #programming #lambdaexpressions
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 4

  • @WillEhrendreich
    @WillEhrendreich 13 วันที่ผ่านมา

    Awesome thanks!

  • @GianluigiConti
    @GianluigiConti 13 วันที่ผ่านมา

    The video I was waiting for! Many thanks

  • @Fxplorer5000
    @Fxplorer5000 13 วันที่ผ่านมา

    Where is the link to David's video??

    • @ThePureState
      @ThePureState  9 วันที่ผ่านมา

      Davids Part was not recorded