Sun's HotSpot

vuletich at vuletich at
Thu Oct 8 19:40:36 UTC 1998

To:   squeak at, sugar at

From: Juan Manuel Vuletich/Argentina/Contr/IBM @ IBMAR

Hello All - Hola a Todos (This message is repeated below in Spanish, for
SUGAR people - En Castellano despues)

Sun has published the specifications for their new second generation Java
virtual machine, these are some of its characteristics.

Interesting Aspects

-Handleless. Object references are direct pointers, just like in Squeak.
- Accurate, generational, incremental copying garbage collector, with
simultaneous mark and compactacion. Like the one Squeak always had. It
seems they borrowed the ideas from Squeak!
- Object Headers of 2 words (3 in some cases). Squeak is the only Object
Environment where 83% (tipically) of the objects have a header with JUST
- Reflective Data represented as Objects. Classes are internally
represented as objects.

Being Smalltalk-like more than ever, this new VM could allow us to generate
Java bytecodes from a Smalltalk environment.
Modifying Squeak object headers (from 1, 2 or 3 words) to use only 2 or 3
words, and surelly several other modifications , it should be possible to
run the Squeak environment on a Java VM. This would allow an Internet
browser to run Squeak without any plugin.

Not so interesting aspects.

- Enhanced thread management.
- Enhanced C interfase
- JIT compiler just for havily used code fragments.
- Method Inlining.

Perharps, some of this is of interest to those working on optimizing Squeak

Now in Spanish...

Sun publico la especificacion de la nueva maquina virtual de segunda
generacion para Java en, con las siguientes

Aspectos interesantes

- Handleless. Las referencias a objetos son punteros directos, como en
- Accurate, generational, incremental copying garbage collector, con mark y
compactacion simultanea. Como el que Squeak tuvo siempre. Parece que
hubieran tomado la idea de Squeak!
- Headers de Objetos de 2 palabras (3 en algunos casos). Squeak es el unico
Ambiente de Objetos donde el 83% (tipicamente) de los objetos tiene header
- Reflective Data represented as Objects. Las clases son (internamente)

Al parecerse a una maquina virtual Smalltalk mucho mas que antes, deberia
ser mas facil la generacion de bytecodes Java en un ambiente Smalltalk.
Modificando los headers de objetos de Squeak (de 1, 2 o 3 palabras) para
usar unicamente 2 o 3 palabras, y seguramente algunas modificaciones mas,
seria posible correr el entorno Squeak sobre una maquina virtual Java. Esto
permitiria correr aplicaciones Squeak en un browser de Internet sin
necesidad de un plugin.

Aspectos no tan interesantes

- Manejo de sincronizacion de threads mejorado
- Interfase a C mejorada.
- Compilador JIT solo para las partes de codigo mas usadas.
- Method Inlining

Alguna idea quizas sea de interes a los que trabajan en optimizar el
interprete de Squeak.

Juan Manuel Vuletich
SW Export  IGS- IBM Argentina
Phone Nbr : 54-1-313-0014 ext. 5207
Tie Line : 840-5207
e-mail: vuletich at

More information about the Squeak-dev mailing list