STklos version 2.1
------------------
What is STklos?
---------------
STklos is an extension of STk which provides a` la CLOS objets to STk.
This implementation takes its inspiration from the version 1.3 of the
Tiny-clos package defined by Gregor Kickzales
(available at parcftp.xerox.com:/pub/mop/*).
Compiling STklos
----------------
STklos is compiled during the interpreter construction. Normally, You don't
have to do something in this directory.
Simple test of STklos
---------------------
STklos needs some files to run properly. Until you have installed it in its
definitive place, you have to:
1. set your default directory to STklos
2. use the the shell script test-stklos to run the interpreter
So, you just have to type
$ cd STklos; test-stklos
To test, that everything is OK, you can try:
(let ()
(define-class A () ((a :initform 10) b))
(define inst (make A))
(slot-set! inst 'b 20)
(+ (slot-ref inst 'a) (slot-ref inst 'b)))
which should yield 30 if everything is correct.
Using STklos with TK
--------------------
A set of classes have been defined to use Tk with object flavor. All the Tk
commands have been re-written using STklos.
Following example creates a three buttons panel (button 1 & 2 being on top of
button 3).
(require "Frame")
(require "Button")
(define f (make ))
(define b1 (make