A brief and incomplete list of papers and universities where SOM has been used in the past.

Efficient and Deterministic Record & Replay for Actor Languages

D. Aumayr, S. Marr, C. Béra, E. Gonzalez Boix, H. Mössenböck

Proceedings of the 15th International Conference on Managed Languages and Runtimes, ManLang'18, ACM, 2018, doi: 10.1145/3237009.3237015, PDF.

Few Versatile vs. Many Specialized Collections: How to design a collection library for exploratory programming?

S. Marr, B. Daloze

Proceedings of Programming Experience Workshop, PX/18, 2018, doi: 10.1145/3191697.3214334, HTML, PDF.

Fully Reflective Execution Environments: Virtual Machines for More Flexible Software

G. Chari, D. Garbervetsky, S. Marr, S. Ducasse

IEEE Transactions on Software Engineering, IEEE TSE, 2018, doi: 10.1109/TSE.2018.2812715, PDF.

A Concurrency-Agnostic Protocol for Multi-Paradigm Concurrent Debugging Tools

S. Marr, C. Torres Lopez, D. Aumayr, E. Gonzalez Boix, H. Mössenböck

Proceedings of the 13th ACM SIGPLAN International Symposium on Dynamic Languages, DLS'17, ACM, 2017, doi: 10.1145/3133841.3133842, HTML, PDF.

A Metaobject Protocol for Optimizing Application-Specific Run-Time Variability

G. Chari, D. Garbervetsky, S. Marr

Proceedings of the 11th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, ICOOOLPS'17. (2017), doi: 10.1145/3098572.3098577, PDF.

Toward Virtual Machine Adaption Rather than Reimplementation: Adapting SOM NS for Grace

R. Roberts, S. Marr, M. Homer, J. Noble

Workshop on Modern Language Runtimes, Ecosystems, and VMs, MoreVMs'17. Extended Abstract. (2017), PDF.

In 2017, James Noble started using SOM NS to implement the Grace language. Richard Roberts turned it into a working implementation called Moth.

TruffleMATE, a SOM variant with the Mate Metaobject protocol, which enables fully reflective execution environments.

Building Efficient and Highly Run-time Adaptable Virtual Machines.

Chari, Guido; Garbervetsky, Diego; and Marr, Stefan.

Proceedings of the 12th Symposium on Dynamic Languages (2016), PDF.

Cross-Language Compiler Benchmarking: Are We Fast Yet?

Marr, Stefan; Daloze, Benoit; and Mössenböck, Hanspeter.

Proceedings of the 12th Symposium on Dynamic Languages (2016), PDF, HTML.

In 2016, the J9 team used their new JitBuilder to speed up SOM++ by 3x-4x. JitBuilder is an API for the J9 just-in-time compiler, which is going to be open sourced as part of the Eclipse OMR project.

In 2015, the J9 team announced the plans to open source the platform underlying their JVM implementation. As part of their JavaOne talk “What's in an Object? Java Garbage Collection for the Polygot”, they used SOM++ as a case study to show how their garbage collector can be integrated into an existing VM.

SOM NS , a Newspeak variant with full support for actor concurrency was developed as a platform for research on the interaction of concurrency models.

Tracing vs. Partial Evaluation: Comparing Meta-Compilation Approaches for Self-Optimizing Interpreters.

Marr, Stefan; and Ducasse, Stéphane.

Proceedings of the 2015 ACM International Conference on Object Oriented Programming Systems Languages & Applications, ACM, (2015), PDF, HTML.

Zero-Overhead Metaprogramming: Reflection and Metaobject Protocols Fast and without Compromises.

Marr, Stefan; Seaton, Chris; and Ducasse, Stéphane.

Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation, ACM, (2015), doi: 10.1145/2737924.2737963, PDF, HTML.

Are We There Yet? Simple Language-Implementation Techniques for the 21st Century.

Marr, Stefan; Pape, Tobias; and De Meuter, Wolfgang.

IEEE Software 31, no. 5 (2014): 60-67, doi: 10.1109/MS.2014.98, PDF, HTML.

The SOM variants were used for a number of experiments such as ActorSOM, a SOM with a event-loop concurrency model similar to AmbientTalk.

SOM++ was optimized and extended with a generational garbage collector as part of a master's thesis.

CSOM/PL: A Virtual Machine Product Line.

Haupt, Michael; Marr, Stefan and Hirschfeld, Robert.

Journal of Object Technology 10, no. 12 (2011): 1-30, doi: 10.5381/jot.2011.10.1.a12, PDF.

Type Harvesting: A Practical Approach to Obtaining Typing Information in Dynamic Programming Languages.

Haupt, Michael; Perscheid, Michael and Hirschfeld, Robert.

Proceedings of the 2011 ACM Symposium on Applied Computing, 2011, doi: 10.1145/1982185.1982464, URL.

Virtual Machine Support for Many-Core Architectures: Decoupling Abstract From Concrete Concurrency Models.

Marr, Stefan; Haupt, Michael; Timbermont, Stijn; Adams, Bram; D'Hondt, Theo; Costanza, Pascal and De Meuter, Wolfgang.

Second International Workshop on Programming Languages Approaches to Concurrency and Communication-cEntric Software, York, UK, 2010, doi: 10.4204/EPTCS.17.6, URL.

The SOM Family: Virtual Machines for Teaching and Research.

Haupt, Michael; Hirschfeld, Robert; Pape, Tobias; Gabrysiak, Gregor; Marr, Stefan; Bergmann, Arne; Heise, Arvid; Kleine, Matthias and Krahn, Robert. Proceedings of the 15th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE), 2010, doi: 10.1145/1822090.1822098, PDF.

In 2010, SOM was used by Michael Haupt to teach one graduate course at Technische Universität Darmstadt (Germany).

NXTalk: Dynamic Object-oriented Programming in a Constrained Environment.

Beck, Martin; Haupt, Michael and Hirschfeld, Robert. Proceedings of the International Workshop on Smalltalk Technologies, 2009, doi: 10.1145/1735935.1735942, PDF.

SOM was used by Michael Haupt between 2007–2009 to teach a course on Virtual Machines at the Hasso Plattner Institute in Potsdam. Many of the feature variants of CSOM for instance support for Smalltalk images, threads, and garbage collection have been developed as part of course work. (more)

In 2006, SOM was used by Michael Haupt to teach one undergraduate course at Lancaster University (UK).

Related to SOM, at least in syntax and spirit:

Design, implementation, and evaluation of the Resilient Smalltalk embedded platform.

Andersen, Jakob R.; Bak, Lars; Grarup, Steffen; Lund, Kasper V.; Eskildsen, Toke; Hansen, Klaus Marius and Torgersen, Mads.

Computer Languages, Systems & Structures 31, no. 3–4 (2005): 127–141, doi: 10.1016/j.cl.2005.02.003.