summer-of-code
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GNU Smalltalk related projects


From: Holger Hans Peter Freyther
Subject: GNU Smalltalk related projects
Date: Wed, 19 Feb 2014 18:47:23 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

Dear Jose,


below a small introduction to GNU Smalltalk and three
tasks. There are more available and a student can contact
address@hidden

GNU Smalltalk is a Smalltalk-80 implementation with the
VirtualMachine written in C and most of the kernel and
additional packages written in Smalltalk itself. Smalltalk
is the mother of all object orientated languages and GNU
Smalltalk is a modern dynamically typed script language.

== VM work ==

Extend the GNU Smalltalk Virtual Machine to make use of
multiple cores. This should include removing global state
from the VM, making the core re-entrant and grouping the 
execution state in a struct. The next step is making the
Smalltalk execution multi-threaded by adding the classic
interpreter lock as known from other VMs. As time permits
the lock should be removed and more/different synchronisation
methods should be provided to the Smalltalk code. The whole
work should be driven by benchmarks to make sure that the
single-core performance is not impacted by this work.


GNU Smalltalk is using the GNU Lightning macro assembler
for the Just-In-Time Compiler. The JIT is known to work
with an older version of GNU Lighting and on i386. GNU
Smalltalk should be ported to support GNU Lightning 2.X
and it should be verified that the result works on i386,
AMD64 and ARMv5te systems.


== Smalltalk in Smalltalk ==

GNU Smalltalk has a Smalltalk compiler written in C and
one in Smalltalk. The Smalltalk implementation has various
incompatibilities that should be worked on. The work will
introduce a student to the Smalltalk syntax and the
Smalltalk programming language itself. The work  will be
done by creating unit tests.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]