Pharo: a Live Environment Where Code, Data, and Model Are One

What if you could define a data model, load data into it, query it, test it, visualize it, and reshape it — all without ever stopping the program? Pharo is an open-source dynamic programming language and environment in the tradition of Smallltak. Everything is a live object, the environment is a single running world you interact with continuously.

This talk introduces Pharo to an audience that may never have heard of it. Rather than a language tutorial, it is a tour of what liveness makes possible when applied to data-oriented problems. First, we will see a hand-on tutorial of Pharo Programming Environment itself, where programs are manipulated as live object. Then, we will present two real-world projects illustrating the range: Moose, a platform for software and data analysis where you interactively build custom analyses over large models and Phausto, a live coding environment where you compose synthesizers and effects as live objects and hear the results instantly.

Attendees will leave with a concrete understanding of what "live programming" means in practice, why it matters for anyone who works with data and models, and how to get started with Pharo.


Objective.
Introduce Pharo to the Compute! audience — data scientists, engineers, researchers — by showing how its live environment changes the experience of working with data and models.

Target audience.
Data scientists, data engineers, researchers, and curious developers who work with models and data in any language. No Smalltalk or Pharo knowledge assumed.

Takeaway.
A concrete understanding of live programming as applied to data work, through real projects. Enough context to download Pharo and try it.

Prior knowledge expected.
General programming experience. No Pharo or Smalltalk background needed.

Marcus Denker

Marcus Denker is a permanent researcher (CR1, with tenure) at INRIA Lille - Nord Europe. Before, he was a postdoc at the PLEIAD lab/DCC University of Chile and the Software Composition Group, University of Bern. His research focuses on reflection and meta-programming for dynamic languages. He is an active participant in the Squeak and Pharo open source communities for many years. Marcus Denker received a PhD in Computer Science from the University of Bern/Switzerland in 2008 and a Dipl.-Inform. (MSc) from the University of Karlsruhe/Germany in 2004