{"guid":"7c78a750-0233-88fc-dda1-c3d214f76be3","title":"The B Programming Language","subtitle":"Archaeology and Reconstruction","slug":"vcfb2024_-_200_-_en_-_202410191115_-_the_b_programming_language_-_angelo_papenhoff","link":"https://c3voc.de","description":"Everyone knows about C, but only few have seen its predecessor B. Unlike C, B was not compiled to machine code but to various incarnations of an interpreted code. Unfortunately, the original B compiler does not seem to have survived, but the interpreter, standard library and a few binaries have. With this it was possible to recreate a compiler – of course written in B itself – that is reasonably close to what it would have been around 1971. Because B is so minimal it is a perfect language to study how a simple compiler works. In the talk you will see what B is like, how it works, how it was reconstructed, and of course see it running under the first edition of UNIX.\n\nLicensed to the public under https://creativecommons.org/licenses/by/4.0/","original_language":"eng","persons":["Angelo Papenhoff"],"tags":["200","vcfb24","Gebäude G, Raum G001","2024","Day 1"],"view_count":213,"promoted":false,"date":"2024-10-19T11:15:00.000+02:00","release_date":"2024-10-19T00:00:00.000+02:00","updated_at":"2026-04-17T23:15:04.950+02:00","length":2191,"duration":2191,"thumb_url":"https://static.media.ccc.de/media/events/vcfb/2024/200-7c78a750-0233-88fc-dda1-c3d214f76be3.jpg","poster_url":"https://static.media.ccc.de/media/events/vcfb/2024/200-7c78a750-0233-88fc-dda1-c3d214f76be3_preview.jpg","timeline_url":"https://static.media.ccc.de/media/events/vcfb/2024/200-7c78a750-0233-88fc-dda1-c3d214f76be3.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/events/vcfb/2024/200-7c78a750-0233-88fc-dda1-c3d214f76be3.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/vcfb2024_-_200_-_en_-_202410191115_-_the_b_programming_language_-_angelo_papenhoff","url":"https://api.media.ccc.de/public/events/7c78a750-0233-88fc-dda1-c3d214f76be3","conference_title":"Vintage Computing Festival Berlin 2024","conference_url":"https://api.media.ccc.de/public/conferences/vcfb24","related":[],"recordings":[{"size":272,"length":2191,"mime_type":"video/webm","language":"eng","filename":"vcfb24-200-eng-The_B_Programming_Language_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2024-10-19T16:10:00.963+02:00","recording_url":"https://cdn.media.ccc.de/events/vcfb/2024/webm-hd/vcfb24-200-eng-The_B_Programming_Language_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/80869","event_url":"https://api.media.ccc.de/public/events/7c78a750-0233-88fc-dda1-c3d214f76be3","conference_url":"https://api.media.ccc.de/public/conferences/vcfb24"},{"size":81,"length":2191,"mime_type":"video/webm","language":"eng","filename":"vcfb24-200-eng-The_B_Programming_Language_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2024-10-19T14:45:04.640+02:00","recording_url":"https://cdn.media.ccc.de/events/vcfb/2024/webm-sd/vcfb24-200-eng-The_B_Programming_Language_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/80850","event_url":"https://api.media.ccc.de/public/events/7c78a750-0233-88fc-dda1-c3d214f76be3","conference_url":"https://api.media.ccc.de/public/conferences/vcfb24"},{"size":80,"length":2191,"mime_type":"video/mp4","language":"eng","filename":"vcfb24-200-eng-The_B_Programming_Language_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2024-10-19T14:26:49.313+02:00","recording_url":"https://cdn.media.ccc.de/events/vcfb/2024/h264-sd/vcfb24-200-eng-The_B_Programming_Language_sd.mp4","url":"https://api.media.ccc.de/public/recordings/80841","event_url":"https://api.media.ccc.de/public/events/7c78a750-0233-88fc-dda1-c3d214f76be3","conference_url":"https://api.media.ccc.de/public/conferences/vcfb24"},{"size":19,"length":2191,"mime_type":"audio/opus","language":"eng","filename":"vcfb24-200-eng-The_B_Programming_Language_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2024-10-19T14:20:55.532+02:00","recording_url":"https://cdn.media.ccc.de/events/vcfb/2024/opus/vcfb24-200-eng-The_B_Programming_Language_opus.opus","url":"https://api.media.ccc.de/public/recordings/80840","event_url":"https://api.media.ccc.de/public/events/7c78a750-0233-88fc-dda1-c3d214f76be3","conference_url":"https://api.media.ccc.de/public/conferences/vcfb24"},{"size":33,"length":2191,"mime_type":"audio/mpeg","language":"eng","filename":"vcfb24-200-eng-The_B_Programming_Language_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2024-10-19T14:20:12.967+02:00","recording_url":"https://cdn.media.ccc.de/events/vcfb/2024/mp3/vcfb24-200-eng-The_B_Programming_Language_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/80839","event_url":"https://api.media.ccc.de/public/events/7c78a750-0233-88fc-dda1-c3d214f76be3","conference_url":"https://api.media.ccc.de/public/conferences/vcfb24"},{"size":245,"length":2191,"mime_type":"video/mp4","language":"eng","filename":"vcfb24-200-eng-The_B_Programming_Language_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2024-10-19T14:19:56.652+02:00","recording_url":"https://cdn.media.ccc.de/events/vcfb/2024/h264-hd/vcfb24-200-eng-The_B_Programming_Language_hd.mp4","url":"https://api.media.ccc.de/public/recordings/80838","event_url":"https://api.media.ccc.de/public/events/7c78a750-0233-88fc-dda1-c3d214f76be3","conference_url":"https://api.media.ccc.de/public/conferences/vcfb24"}]}