[Oberon] A technote for automatically running batch job on system startup
Skulski, Wojciech
skulski at pas.rochester.edu
Sun Aug 2 18:01:58 CEST 2020
Joerg:
batch commands almost by definition should run in background. In *nix batch commands are executed with a scripting language. I thought that both Michael and Andreas are moving in that direction, where the script is simply a sequence of Oberon commands. I thought that the design pattern is to parse the text file, figure out where is the next piece "Mod.Proc <parameters>", set Oberon.Par to it, and call the usual mechanism. A practical problem was lack of the return code, and it was implemented. The modification of the OS architecture was pretty minimal.
I also noted that compiling a sequence of files is a form of batch. This mechanism is already implemented. It can be probably extended to a more general batch processing. It would not require major modifications of the OS.
What I just said is probably sketchy. Excuse me if I am missing something major.
ojtek
________________________________________
From: Oberon [oberon-bounces at lists.inf.ethz.ch] on behalf of Joerg [joerg.straube at iaeth.ch]
Sent: Sunday, August 2, 2020 11:44 AM
To: ETH Oberon and related systems
Subject: [EXT] Re: [Oberon] A technote for automatically running batch job on system startup
Chuck
Do I understand correctly, you modified TextFrames and System and have to recompile everything.
I wonder whether it would work as well to introduce a new „batch document“ type (something like BatchFrames inherited from TextFrames where you only add your new CallMsg?
And let System.Mod import your new BatchFrames.
You would not have to recompile everything. It‘s an add-on to the system and only the implementation of System would change. System should not even get a new key...
Or do I miss something?
Jörg
Am 02.08.2020 um 16:52 schrieb Charles Perkins <chuck at kuracali.com>:
Hello everybody,
I wrote a note on how to have Oberon automatically run a startup script. I introduced two small changes to TextFrames.Mod (five lines total) introducing a 'Call Message' and then handling that message with a call to the Call procedure, and three small changes to System.Mod (eight lines total) introducing two variables, opening a viewer with a predetermined text file, and then sending the call message to the viewer at the end of system initialization.
https://github.com/io-core/technotes/blob/main/technote013.md<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_io-2Dcore_technotes_blob_main_technote013.md&d=DwMFaQ&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=uUiA_zLpwaGJIlq-_BM9w1wVOuyqPwHi3XzJRa-ybV0&m=QkKd4wswN9l1hMI7w1KfpHCUMrO4LIfJd76z61aK_8M&s=VScQlYuMBeHcSs_DeuNJsch9nj8UZDeQUgehsRN86z0&e=>
I used Michael Schierl's Batch.Mod for the actual batching of commands but Andreas Pirklbauer's system would have worked just as well, or any other batching or script system. The above changes merely call the first command in a text file, the rest of what happens is up to that command.
I did this to make building and testing my own system more automatic but I thought I'd share in case anyone found it interesting or useful
Best Regards,
Chuck
--
Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems
https://lists.inf.ethz.ch/mailman/listinfo/oberon<https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.inf.ethz.ch_mailman_listinfo_oberon&d=DwQFaQ&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=uUiA_zLpwaGJIlq-_BM9w1wVOuyqPwHi3XzJRa-ybV0&m=QkKd4wswN9l1hMI7w1KfpHCUMrO4LIfJd76z61aK_8M&s=yNFNbhNSoeT0VldTXRxguXnAEE1ZQ8bnxHcIKl9sTp8&e=>
More information about the Oberon
mailing list