{"guid":"171bd1d8-fbf1-4d78-ac81-a953a5a7a271","title":"Erlang, OCaml, same thing 🤷","subtitle":null,"slug":"bob11-2024-erlang-ocaml-same-thing-ostera","link":"https://bobkonf.de/2024/ostera.html","description":"Ever wondered what type-safe, massively concurrent functional\nprogramming could look like? Join me on a journey from Erlang to OCaml\nand back again.\n\nWe’ll learn about Caramel 🍬 –\nan experiment in bringing type-safety for the Erlang VM. Caramel was\nborn out of the question: why is Erlang hard to type? – and as it\nturns out, it is not! If you restrict it enough. So much so that what\nyou end up with is…OCaml?\n\nOn the flip side, the new algebraic effects and multicore capabilities\nof OCaml 5 open the possibility of new execution models. How far could\nwe take them? Could we inject Erlang’s famed concurrency model into\nOCaml?\n\nRiot 🌪️ is an actor-model runtime\nfor OCaml 5 that brings multi-core scheduling and lightweight\nprocesses, communicating via message passing.\n\nKey Takeaways\n\n_ Learn more about how type safety and supervision trees make for the\nultimate reliability stack\n- Understand the convergence of Erlang and OCaml\n- Get started writing Type-safe actor systems in OCaml with Riot\n\t\n\n\n\t","original_language":"eng","persons":["Leandro Ostera"],"tags":["bob2024","11","2024","Talk","BOB","BOBKonferenz"],"view_count":157,"promoted":false,"date":"2024-03-15T12:35:00.000+01:00","release_date":"2024-07-14T00:00:00.000+02:00","updated_at":"2026-04-03T13:45:09.070+02:00","length":2781,"duration":2781,"thumb_url":"https://static.media.ccc.de/media/events/bobkonf/2024/11-171bd1d8-fbf1-4d78-ac81-a953a5a7a271.jpg","poster_url":"https://static.media.ccc.de/media/events/bobkonf/2024/11-171bd1d8-fbf1-4d78-ac81-a953a5a7a271_preview.jpg","timeline_url":"https://static.media.ccc.de/media/events/bobkonf/2024/11-171bd1d8-fbf1-4d78-ac81-a953a5a7a271.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/events/bobkonf/2024/11-171bd1d8-fbf1-4d78-ac81-a953a5a7a271.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/bob11-2024-erlang-ocaml-same-thing-ostera","url":"https://api.media.ccc.de/public/events/171bd1d8-fbf1-4d78-ac81-a953a5a7a271","conference_title":"BOB Konferenz 2024","conference_url":"https://api.media.ccc.de/public/conferences/bobkonf2024","related":[],"recordings":[{"size":180,"length":2781,"mime_type":"video/webm","language":"eng","filename":"bob2024-11-eng-Erlang_OCaml_same_thing_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2024-07-14T18:14:58.928+02:00","recording_url":"https://cdn.media.ccc.de/events/bobkonf/2024/webm-hd/bob2024-11-eng-Erlang_OCaml_same_thing_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/78469","event_url":"https://api.media.ccc.de/public/events/171bd1d8-fbf1-4d78-ac81-a953a5a7a271","conference_url":"https://api.media.ccc.de/public/conferences/bobkonf2024"},{"size":89,"length":2781,"mime_type":"video/webm","language":"eng","filename":"bob2024-11-eng-Erlang_OCaml_same_thing_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2024-07-14T18:08:16.523+02:00","recording_url":"https://cdn.media.ccc.de/events/bobkonf/2024/webm-sd/bob2024-11-eng-Erlang_OCaml_same_thing_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/78466","event_url":"https://api.media.ccc.de/public/events/171bd1d8-fbf1-4d78-ac81-a953a5a7a271","conference_url":"https://api.media.ccc.de/public/conferences/bobkonf2024"},{"size":64,"length":2781,"mime_type":"video/mp4","language":"eng","filename":"bob2024-11-eng-Erlang_OCaml_same_thing_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2024-07-14T17:52:56.654+02:00","recording_url":"https://cdn.media.ccc.de/events/bobkonf/2024/h264-sd/bob2024-11-eng-Erlang_OCaml_same_thing_sd.mp4","url":"https://api.media.ccc.de/public/recordings/78465","event_url":"https://api.media.ccc.de/public/events/171bd1d8-fbf1-4d78-ac81-a953a5a7a271","conference_url":"https://api.media.ccc.de/public/conferences/bobkonf2024"},{"size":42,"length":2781,"mime_type":"audio/mpeg","language":"eng","filename":"bob2024-11-eng-Erlang_OCaml_same_thing_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2024-07-14T17:50:29.098+02:00","recording_url":"https://cdn.media.ccc.de/events/bobkonf/2024/mp3/bob2024-11-eng-Erlang_OCaml_same_thing_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/78464","event_url":"https://api.media.ccc.de/public/events/171bd1d8-fbf1-4d78-ac81-a953a5a7a271","conference_url":"https://api.media.ccc.de/public/conferences/bobkonf2024"},{"size":29,"length":2781,"mime_type":"audio/opus","language":"eng","filename":"bob2024-11-eng-Erlang_OCaml_same_thing_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2024-07-14T17:28:45.707+02:00","recording_url":"https://cdn.media.ccc.de/events/bobkonf/2024/opus/bob2024-11-eng-Erlang_OCaml_same_thing_opus.opus","url":"https://api.media.ccc.de/public/recordings/78457","event_url":"https://api.media.ccc.de/public/events/171bd1d8-fbf1-4d78-ac81-a953a5a7a271","conference_url":"https://api.media.ccc.de/public/conferences/bobkonf2024"},{"size":154,"length":2781,"mime_type":"video/mp4","language":"eng","filename":"bob2024-11-eng-Erlang_OCaml_same_thing_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2024-07-14T17:26:09.598+02:00","recording_url":"https://cdn.media.ccc.de/events/bobkonf/2024/h264-hd/bob2024-11-eng-Erlang_OCaml_same_thing_hd.mp4","url":"https://api.media.ccc.de/public/recordings/78455","event_url":"https://api.media.ccc.de/public/events/171bd1d8-fbf1-4d78-ac81-a953a5a7a271","conference_url":"https://api.media.ccc.de/public/conferences/bobkonf2024"}]}