Self VM
E555979
Self VM is the virtual machine that executes programs written in the Self programming language, providing the runtime environment and implementation for its prototype-based object system.
All labels observed (1)
| Label | Occurrences |
|---|---|
| Self VM canonical | 1 |
Statements (47)
| Predicate | Object |
|---|---|
| instanceOf |
runtime system
ⓘ
virtual machine ⓘ |
| associatedInstitution |
Stanford University
NERFINISHED
ⓘ
Sun Microsystems Laboratories NERFINISHED ⓘ |
| associatedWith | Self programming language project ⓘ |
| designedFor |
highly dynamic object-oriented programming
ⓘ
prototype-based programming ⓘ |
| executionGranularity | objects and messages rather than classes ⓘ |
| executionModel | message passing between objects ⓘ |
| implements |
Self language semantics
ⓘ
prototype-based object system ⓘ |
| influenced |
Java HotSpot VM
NERFINISHED
ⓘ
JavaScript engine design ⓘ dynamic language VM research ⓘ |
| languageParadigm |
object-oriented
ⓘ
prototype-based ⓘ |
| memoryManagement | automatic garbage collection ⓘ |
| notableFor |
high performance for dynamic languages
ⓘ
influencing modern JIT compiler design ⓘ pioneering adaptive optimization in VMs ⓘ |
| objectModel | prototype-based without classes ⓘ |
| optimizationTechnique |
adaptive optimization based on profiling
ⓘ
dynamic recompilation ⓘ inline caching ⓘ polymorphic inline caching ⓘ |
| provides | runtime environment for Self programs ⓘ |
| researchContext |
object-oriented language implementation
ⓘ
virtual machine optimization ⓘ |
| supports | graphical programming environment for Self ⓘ |
| supportsFeature |
adaptive optimization
ⓘ
closures ⓘ dynamic code generation at runtime ⓘ dynamic deoptimization ⓘ dynamic typing ⓘ first-class objects ⓘ garbage collection ⓘ incremental compilation ⓘ inline caching ⓘ just-in-time compilation ⓘ lexical scoping ⓘ maps or object layouts ⓘ mirrors or meta-objects for reflection ⓘ non-blocking incremental garbage collection ⓘ polymorphic inline caches ⓘ snapshotting of object memory ⓘ |
| supportsLanguage | Self programming language ⓘ |
| targetPlatform | workstations of late 1980s and 1990s ⓘ |
Referenced by (1)
Full triples — surface form annotated when it differs from this entity's canonical label.