{"guid":"5e8a4726-0e49-5f5a-ae07-90c5f99e587b","title":"Interaction Combinators: The Hidden Patterns of Computation?","subtitle":null,"slug":"gpn23-124-interaction-combinators-the-hidden-patterns-of-computation-","link":"https://cfp.gulas.ch/gpn23/talk/RCV9D3/","description":"Whaa- hidden patterns in my computations??\n\nResearch on Interaction Nets and Interaction Combinators is often buried in a confusing mess of Greek letters and weird graphs, and most computer scientists and programming language developers are still not aware of them or their properties!\n\nIn this talk we give a friendly introduction to Interaction Combinators, argue why they're one of the most minimal encodings of pure computation, and give examples of how you, too, could benefit from knowing about Interaction Nets!\n\nWe all know elementary arithmetic and most of us know some programming languages. If you go to the core of both of them -- beyond math, assembly, Peano axioms, Turing machines, or the lambda calculus -- you have reached the core of pure computation itself.\n\nWe argue that Interaction Combinators can be seen as a minimal encoding of pure computation. Interaction Combinators are a subset of Interaction Nets. Interaction Nets are a graph-like structure with properties such as \"locality\" or \"strong confluence\". These properties allow them to be reduced in a massively parallel way without affecting the total number of reductions.\n\nGoing back to more traditional programming, using Interaction Combinators as the basis of programming languages allows programmers to write massively parallel code without having to rely on a confusing mess of mutexes and semaphores.\n\nWe give a very accessible (and mostly visual) introduction to the world of Interaction Nets, without requiring much existing knowledge!\n\nLicensed to the public under https://creativecommons.org/licenses/by/4.0/","original_language":"eng","persons":["Marvin","Christopher"],"view_count":388,"promoted":false,"date":"2025-06-19T21:00:00.000+02:00","release_date":"2025-06-20T00:00:00.000+02:00","updated_at":"2026-04-19T20:45:04.653+02:00","tags":["124","2025","gpn23","Science","ZKM Kubus","gpn23-eng","Day 1"],"length":3127,"duration":3127,"thumb_url":"https://static.media.ccc.de/media/events/gpn/gpn23/124-5e8a4726-0e49-5f5a-ae07-90c5f99e587b.jpg","poster_url":"https://static.media.ccc.de/media/events/gpn/gpn23/124-5e8a4726-0e49-5f5a-ae07-90c5f99e587b_preview.jpg","timeline_url":"https://static.media.ccc.de/media/events/gpn/gpn23/124-5e8a4726-0e49-5f5a-ae07-90c5f99e587b.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/events/gpn/gpn23/124-5e8a4726-0e49-5f5a-ae07-90c5f99e587b.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/gpn23-124-interaction-combinators-the-hidden-patterns-of-computation-","url":"https://api.media.ccc.de/public/events/5e8a4726-0e49-5f5a-ae07-90c5f99e587b","conference_title":"Gulaschprogrammiernacht 23","conference_url":"https://api.media.ccc.de/public/conferences/gpn23","related":[],"recordings":[{"size":204,"length":3127,"mime_type":"video/webm;codecs=av01","language":"eng","filename":"gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_av1-hd.webm","state":"new","folder":"av1-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2025-06-21T22:42:52.205+02:00","recording_url":"https://cdn.media.ccc.de/events/gpn/gpn23/av1-hd/gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_av1-hd.webm","url":"https://api.media.ccc.de/public/recordings/88130","event_url":"https://api.media.ccc.de/public/events/5e8a4726-0e49-5f5a-ae07-90c5f99e587b","conference_url":"https://api.media.ccc.de/public/conferences/gpn23"},{"size":34,"length":3127,"mime_type":"audio/opus","language":"eng","filename":"gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2025-06-20T01:13:59.094+02:00","recording_url":"https://cdn.media.ccc.de/events/gpn/gpn23/opus/gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_opus.opus","url":"https://api.media.ccc.de/public/recordings/87932","event_url":"https://api.media.ccc.de/public/events/5e8a4726-0e49-5f5a-ae07-90c5f99e587b","conference_url":"https://api.media.ccc.de/public/conferences/gpn23"},{"size":47,"length":3127,"mime_type":"audio/mpeg","language":"eng","filename":"gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2025-06-20T01:13:55.128+02:00","recording_url":"https://cdn.media.ccc.de/events/gpn/gpn23/mp3/gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/87931","event_url":"https://api.media.ccc.de/public/events/5e8a4726-0e49-5f5a-ae07-90c5f99e587b","conference_url":"https://api.media.ccc.de/public/conferences/gpn23"},{"size":281,"length":3127,"mime_type":"video/webm","language":"eng","filename":"gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2025-06-20T02:43:29.413+02:00","recording_url":"https://cdn.media.ccc.de/events/gpn/gpn23/webm-hd/gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/87956","event_url":"https://api.media.ccc.de/public/events/5e8a4726-0e49-5f5a-ae07-90c5f99e587b","conference_url":"https://api.media.ccc.de/public/conferences/gpn23"},{"size":119,"length":3127,"mime_type":"video/webm","language":"eng","filename":"gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2025-06-20T02:06:03.685+02:00","recording_url":"https://cdn.media.ccc.de/events/gpn/gpn23/webm-sd/gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/87953","event_url":"https://api.media.ccc.de/public/events/5e8a4726-0e49-5f5a-ae07-90c5f99e587b","conference_url":"https://api.media.ccc.de/public/conferences/gpn23"},{"size":106,"length":3127,"mime_type":"video/mp4","language":"eng","filename":"gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2025-06-20T01:22:04.495+02:00","recording_url":"https://cdn.media.ccc.de/events/gpn/gpn23/h264-sd/gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_sd.mp4","url":"https://api.media.ccc.de/public/recordings/87943","event_url":"https://api.media.ccc.de/public/events/5e8a4726-0e49-5f5a-ae07-90c5f99e587b","conference_url":"https://api.media.ccc.de/public/conferences/gpn23"},{"size":305,"length":3127,"mime_type":"video/mp4","language":"eng","filename":"gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2025-06-20T01:08:08.124+02:00","recording_url":"https://cdn.media.ccc.de/events/gpn/gpn23/h264-hd/gpn23-124-eng-Interaction_Combinators_The_Hidden_Patterns_of_Computation_hd.mp4","url":"https://api.media.ccc.de/public/recordings/87927","event_url":"https://api.media.ccc.de/public/events/5e8a4726-0e49-5f5a-ae07-90c5f99e587b","conference_url":"https://api.media.ccc.de/public/conferences/gpn23"}]}