Package ist.palcom.base

Provides Java versions of (a subset of) the classes in the PalVM Smalltalk libraries.

See:
          Description

Class Summary
Array Array is a system class that represents an mutable sequence of objects.
ArrayList ArrayList is an array based list that supports most of the interface of Java ArrayList.
Block Block is a system class that is used to implement control structures in Smalltalk.
Block1 Block1 is a Block that takes one argument.
Block2 Block2 is a Block that takes 2 arguments.
Block3 Block3 is a Block that takes 3 arguments.
BlockMirror There are restrictions on the operations that can be performed on Blocks.
Boolean Boolean is a system class representing a true/false value.
ByteArray ByteArray is a system class representing arrays of byte values.
ByteArrayBuffer ByteArrayBuffer is a ByteBuffer that uses a ByteArray as storage.
ByteBuffer ByteBuffer supplies a stream-like interface to manipulating byte-data.
Channel Channel is an abstract superclass for socket-like objects.
CheckedArray This class can be used to implement Java-style type checked arrays.
Class Class is a system class whose instances represent classes.
Coroutine Instances of Coroutine represents independent execution sequences.
False A singular instance, 'false', of the False class represents the canonical false value.
HashEntry HashEntry is a system class.
HashIterator HashIterator is a system class.
HashKeyIterator Iterator over the keys in a HashMap or ReadableHashMap.
HashKeySet A set view of the keys in a HashMap or ReadableHashMap.
HashMap HashMap is a system class that maps keys to values.
HashMapSubclass  
HashValueIterator Iterator over the values in a HashMap or a ReadableHashMap.
HashValues A collection view of the values in a HashMap or ReadableHashMap.
Integer Integer is a system class that represents small integer values.
Integer32 Integer32 is a system class whose instances represent 32 bit integer values.
Link Link is used by the implementation of the LinkedList class.
LinkedList LinkedList is a double linked list that supports the interface of both Java LinkedList and typical LinkedList datastructures in the Smalltalk world.
Memory Memory is a system class whose instances represent externally allocated memory using the native malloc and free functions.
MemoryByteBuffer MemoryByteBuffer is a ByteBuffer implementation that uses a Memory object as storage.
Method Method is a system class describing the methods of classes.
NativeFuture An instance of a NativeFuture represents the return value of an external call which is taking place in a different OS thread.
Nil Nil is a system class that has a singular instance, 'nil', that represents 'nothing' or 'null'.
Object Object is the system class that is a superclass of all other classes.
PersistentComponent PersistentComponent represent a loaded component and contains classes and metainformation.
Process The process represents a running process.
ReadableArray ReadableArray is a system class that represents a read-only sequence of objects.
ReadableHashEntry ReadableHashEntry is a system class.
ReadableHashMap ReadableHashMap is a system class.
RoundRobin RoundRobin is a simple scheduler used for scheduling processes.
Runner Runner is a thread that executes the run method on a process.
StackFrame StackFrame is a system class that represents stack frames on the execution stack of a coroutine.
String The String class represents strings of characters.
StringBuilder StringBuilder is an efficient way to create String objects.
Symbol Symbol is a system class that represents unique symbol values in the program.
System The System class contains useful global functionality.
Thread Thread represents an independent execution sequence that is scheduled together with other Threads in a system of Threads within a Process.
True A singular instance, 'true', of the True class represents the canonical true value.
Vector The Vector class an array based list.
 

Package ist.palcom.base Description

Provides Java versions of (a subset of) the classes in the PalVM Smalltalk libraries.

Package Specification

The classes in this package and its subpackages are Java counterparts of Smalltalk library classes for the PalVM (the PalCom Virtual Machine). Having these classes makes the low-level PalCom libraries available from Java programs (from Pal-J, which is PalCom's variant of Java, and from standard Java).

The public APIs of the classes in this package are the same when running on the PalVM as when running on a JVM, which means that upper-layer code can be the same. But, the implementations of the classes in this package are different, depending on what VM is used.

For the PalVM, the classes in this package are specified as Pal-J external classes, which are basically interface descriptions. At runtime, objects of the Smalltalk library classes are actually created and used. This external class mechanism is one of PalCom's mechanisms for interoperability between programming languages.

For the JVM, there is a separate implementation of the classes in this package, which is not used on the PalVM. The JVM implementation uses JVM-only mechanisms for realizing the public APIs of the classes. As an example, the class Coroutine is implemented using the synchronized keyword, and the wait and notify methods. Those are not available on the PalVM, but in the JVM implementations of these low-level libraries they can be used.

See Also:
ist.palcom.base.networking, ist.palcom.base.io