HackerTube

"Liberating the Smalltalk lurking in C and Unix" by Stephen Kell

Strange Loop Conference2 HN recommenders · recommended in 3 months, 2016–2023
YouTube
talk · advanced · evergreen · 2016–2023 on HN

Stephen Kell's Strange Loop talk argues that C and Unix already contain Smalltalk-like dynamism and introspection that can be exposed. He presents his liballocs research on bridging dynamic and compiled languages.

HN commenters recommend it in Smalltalk and Unix threads as a demonstration of runtime dynamism hiding in native binaries and shared libraries.

5 comments from Hacker News

@johndoe08152023-01 · in “Smalltalk-80 on Raspberry Pi: A Bare Metal Implementation”

I can recommend Stephen Kell's publications on this topic, e.g. "Unix, Plan 9 and the Lurking Smalltalk": link Video: ▶ this video More on Stephen's research can be found at link

Recommends View on HN
@johndoe08152020-07 · in “Bare metal Smalltalk-80 port to the Raspberry Pi”

Thanks for the link - that looks really interesting! I will have to give it a try to make some informed statement, but I think it's definitely worth looking at. Some parts of Ruby also seem to be inspired by Smalltalk, so that might be a good fit. There's also a Smalltalk-80 VM by Rochus Keller based on the Lua JIT compiler [8] (and a very nice Qt-based Smalltalk browser), that might also go in the same direction. In general, I think there are two major interesting aspects in systems like the Ruby system browser and Smalltalk. On the one hand one can discover the system - you can dig into the implementation without using a disassembler or reverse engineering - and on the other hand it is possible to change the system behavior at runtime (though this is, of course, dangerous). I would love to see at least the discoverability aspect to be more pervasive in standard operating systems. There are already partial approaches to this, such as DTrace/systemtap and the proc filesystem, but having discoverability as a first class concept - which might fit well to Plan 9's (and to some extent Unix's) "everything is a file" approach - would be nice. The ability to change the system at runtime is also fascinating. I already mentioned the research of Stephen Kell in another comment [1] and there's a great video of one of his talks [2] in which he shows his approach to dynamically alter a program's behavior on Unix using shared library mechanisms (you can find the code on github [3]). I work

Recommends View on HN
@ElijahLynn2016-02 · in “Gdb: Debugging with the natives”

Lately I have been very interested in putting faces and voices to words. After reading this article, which was over my head but I got a little out of it. I ended up reading Stephen Kell's homepage, which is crazy intense as far as academics go. He had a link to a video of his and I appreciated the quality and now have a face and voice to attach to the article, therefore will probably remember it better. tldr; Here is a video of the same guy who wrote this article ==> ▶ this video p.s. 5 minutes in and the talk is pretty good.

Recommends View on HN
@carapace2023-03 · in “Smalltalk: An Entrepreneur’s Secret Weapon (2020)”

"Liberating the Smalltalk lurking in C and Unix" by Stephen Kell, Strange Loop Conference, ▶ this video > 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.

@mpweiher2020-06 · in “Design Principles Behind Smalltalk (1981)”

> Smalltalk can be described concisely as a graphical UNIX Or Unix as a closet Smalltalk... "Liberating the Smalltalk lurking in C and Unix" by Stephen Kell ▶ this video