u/jcubicin r/ProgrammingLanguages • Recommends
"Liberating the Smalltalk lurking in C and Unix" by Stephen Kell
88K subscribers • 107 videos on Hallway • Conference channel
- Recommended by 4 people: 2 on Hacker News, 1 on Lobsters and 1 in engineering communities.
- A classic. People kept recommending it from 2016 to 2023.
- Presented by Stephen Kell, researcher
Advanced. Deep dive for people who know the field.
25K views12 years ago4 recommendations
Systems programmingProgramming languagesOperating systemsCompilers and interpretersPerformance and optimization
Stephen Kell presents liballocs, an infrastructure that exposes dynamic, Smalltalk-like features within statically compiled C and Unix environments.
Most programmers make a clear distinction between dynamic, interpreted languages such as Smalltalk and Ruby, and statically compiled languages such as C and C++. Dynamic languages are seen as being slow, yet easy to use, and with advantages of introspection, integrated tooling, flexibility and rapid prototyping. Compiled languages are seen as fast, yet lacking the aforementioned benefits, and requiring understanding of impenetrable binary files and esoteric tools. Interfacing the two is even worse, involving FFI "dark magic", complicated further by the fact that the infrastructures supporting one or other kind of language work quite differently. "Static" generate binaries sitting directly on the operating system, while dynamic languages exist inside interpreter-like virtual machines. Does it have to be this way, or is there a unifying model? Can we get the best of both worlds: fast compiled binaries that nevertheless support introspection and other dynamism, and dynamic languages that integrate with compiled code without FFI magic? This talk introduces liballocs, an infrastructure which exposes the dynamism hiding in the arcane linking and debugging infrastructure of a Unix process, along with a small extension to C toolchains that enables fast dynamic access to data created by statically compiled code. Together they can be said to unleash a "hidden Smalltalk" inside the C and Unix model of programs and processes. Come prepared for a journey that takes your perceptions of the boundaries between dynamic and static languages and turns them on its head. Stephen Kell University of Cambridge @stephenrkell Stephen Kell is a postdoctoral researcher at the University of Cambridge. He is a practical computer scientist with wide interests, but one central goal: to make it easier and cheaper to develop useful, high-quality software systems. So far, his work has focused on programming languages, other programming tools, and the systems that support them---including language runtimes, operating systems, and the grey area between the two. Since completing his PhD in Cambridge in 2010, he has worked at the University of Oxford, the University of Lugano, Oracle Labs in California, before returning to Cambridge last year.Why it's here
4 people recommend thisWhat people say. Recommended as an interesting exploration of bridging dynamic and compiled languages by exposing runtime dynamism in Unix processes.
sdhandon Lobsters • Recommends
ElijahLynnon Hacker News • Recommends
On “Gdb: Debugging with the natives”
johndoe0815on Hacker News • Recommends
On “Bare metal Smalltalk-80 port to the Raspberry Pi”
johndoe0815on Hacker News • Recommends
On “Smalltalk-80 on Raspberry Pi: A Bare Metal Implementation”
mpweiheron Hacker News • Mentions
On “Design Principles Behind Smalltalk (1981)”
carapaceon Hacker News • Mentions
On “Smalltalk: An Entrepreneur’s Secret Weapon (2020)”
u/dddevoin r/C_Programming • Mentions
On “C talks or conference videos?”