How I grew to love Erlang type specs - Marc Sugiyama | Code BEAM Europe 2023

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 ก.ย. 2024
  • ✨This talk was recorded at Code BEAM Europe 2023. If you're curious about our upcoming event, check codebebeameuro... ✨
    Abstract:
    Erlang is a typeless language, but our programs have types. Large teams and long running projects need to communicate how our programs work. Typing structures and functions beyond the Erlang base types makes code easier to understand, change, and debug. This talk covers how I grew from finding type specs an annoyance to loving them.
    Let's keep in touch! Follow us on:
    💥 Twitter: / codebeamio
    💥 Facebook: / codesyncglobal
    💥 Linkedin: / code-sync
    💥 Mastodon: genserver.soci...
  • วิทยาศาสตร์และเทคโนโลยี

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

  • @carnelyve866
    @carnelyve866 4 หลายเดือนก่อน +1

    Great talk. 🔥

  • @violinalone
    @violinalone 4 หลายเดือนก่อน

    as J.A. would sometimes insist:
    foo() ->
    {ok, A} = file:open("file.txt", read),
    ok = file:close(A),
    {ok, B} = file:read(A),
    {ok, B}.
    Not a single type-checker in the world would catch this.

    • @VonCarlsson
      @VonCarlsson 4 หลายเดือนก่อน +1

      The equivalent Rust code would result in a compilation error

    • @lechindianer
      @lechindianer 4 หลายเดือนก่อน

      ​@@VonCarlssonI'm not proficient with Haskell or Idris but from what I've experienced during discussions with those devs I guess those 2 languages won't allow it either

    • @birrextio6544
      @birrextio6544 2 หลายเดือนก่อน

      That was what Joe Armstrong pointed out.