LSWVST Documentation

Smalltalk programming language

A good overview of the Smalltalk Language can be found on Wikipedia.

Fast start for Smalltalk experts

LSWVST uses native Widgets, which are availabe in LSWVST Orthogonality.

Fast start for Visual-Smalltalk programmers

Please read our differences to VSE Page . If you plan to migrate a legacy VSE application, you should visit the VSE migration page.

LSWVST Environment

Installing LSWVST on Windows

Invoke LSWVST-setup.exe and install LSWVST in your preferred File-location. After successful installation you should have

a few sub directories ( Libraries / Repositories / Images / Virtual-Machines ).

Double-clicking Lswvst-dev.exe will bring up LSWVST's development environment.

Activating LSWVST

Until you activate LSWVST you will not be able to use essential functions for commercial software-development:

LSWVST Tiny-Development-Environment

LSWVST TinyDev brings you back to the 80ies, a Class-Hierarchy-Browser, a Class-Browser a Workspace, a Transcript a Message-Browser and a Debugger-Window. For small programs and educational purposes this is enough.

 

 

 

 

LSWVST Team-Environment

LSWVST Team-Environment is what you need to develop LSWVST-programs.Your main Browser is the Package-Browser.

 

 

 

 

 

 

 

Creating LSWVST Executables, DLL's and more

To create your final program you several steps:

 

It is not recommended - but possible to use an image-file for production. Image-Files represent "Snapshots" of the Object-World during development and should not be abused to save some initialization-coding.

The simplest Executable LSWVST-Helloworld.exe

This is the equivalent to a small Win32 executable written in LSWAsm

LSWAsm

Main:
    call osMessageBox &NULL Z$'LSWVST-Helloworld'  &MB_SYSTEMMODAL &MB_OK
    call osExitProcess 0

the resulting executable is about 11 KByte.

LSWVST

 define a subclass of the MessageBox class

HelloworldMessageBox

    superclass: MessageBox_InteractionStrategy

    indexable type: none instance variables: '' class variables: '' class instance variables: ''

add a HelloworldMessageBox visitee ( using add Text visitee refactoring menu in Package-Browser )

TextVisitor>>visitHelloworldMessageBox: aHelloworldMessageBox

    ^ 'LSWVST-Helloworld'

define a HellowordApplication class as subclass of ApplicationSession_Strategy ( using Package-Browser add subclass Menu )

invoke the MessageBox in the Helloworld-Application

 HelloworldApplication>>startUpApplication

( HelloworldMessageBox forOwner: self desktopWindow ) createWindow.

self currentSession quit

after testing the Helloworld application you create the executable. This is done in a few  steps:

the resulting executable is about 30 KByte.