LOTUSSCRIPT CONSOLE PROGRAMS
PREAMBLE
LotusScript release 4, part of Lotus Notes and Domino release 5, documents LSI_THREAD_MODULE and LSI_THREAD_CALLMODULE constants as arguments for GetThreadInfo() function. However these two constants do not exhibit module name or called module name as indicated in Domino documentation.They seem to have no utility neither in Notes/Domino nor in SmartSuite, at least according to the testing and investigations I could achieve. The unique situation I have been able to make use of LSI_THREAD_MODULE and LSI_THREAD_CALLMODULE values is standalone LotusScript. Standalone LotusScript stands for running .lss files without Notes or SmartSuite environments. I created standalone LotusScript interpreter engines - for Windows/16 and Windows/32 platforms - using former Lotus products installation kits that initially resorted to LotusScript. You can check below for more information on STANDALONE engines construction.
You will find attached a Notes database containing files and instructions that will help you setup a « LotusScript Release 2.01 Interpreter for Windows/16 » that still operates under current Windows/32 environments. Please follow its About and Using pages instructions in order to demonstrate lsi_info(3) and lsi_info(13) undocumented statements magic ! I suggest you check file content before reading further.
RUNNING THE EXEMPLE
Attachment About design note holds original english online help for LotusScript language release 2.01
o Using design note stores LotusScript interpreter executable files to be extracted in C:\LSI as suggested
o Export " Module " script library in the above directory as Module.lss
o Run " LSIRUN Module.lss " command and examine its outputs
FORGOTTEN HISTORY OF LOTUSSCRIPT
lsi_info(3) and lsi_info(13) have been documented from Release 4 onwards of LotusScript - that is Notes/Domino Release 5 - as GetThreadInfo(LSI_THREAD_MODULE) and GetThreadInfo(LSI_THREAD_CALLMODULE) respectively. You noticed, as most Domino developers, that these 2 values exhibit useless output, both using Notes/Domino or using Lotus SmartSuite. However you may remember LotusScript language was first implemented in now defunct Lotus Improv product, while its Release 2 inception accompanied another defunct product called Lotus Notes ViP. I am inclined to believe lsi_info(3) and lsi_info(13) statement benefitted those times and was rendered useless since Notes Release 4, while IBM/Lotus itself did not realize its lost utility across the developments of Domino Designer and SmartSuite IDEs.
If still with me, I'll explain how you can build a LotusScript Interpreter Engine - As SILLY as it sounds !
Grab back good old Notes Release 4.5, 4.6 - I'm not sure about 5.x - installation CDs and interrupt Domino installation right after its first executables have been unpacked, or before you start answering the first setup options. From that point, you get temporarily installed on hard disk what I called STANDALONE LotusScript to play with. Copy temporary installation directory as C:\LSI, cancel the interrupted installation and you're now ready to write .lss files you'll execute with LSIRUN.EXE
PS: Notice how good Object Oriented Programming (OOP) help was with LotusScript Release 2 while it disappeared for long from Domino on-line help: another unfortunate miss from IBM/Lotus while implementing LotusScript in Domino Release 4.