[Oberon] all in one git tree

Skulski, Wojciech skulski at pas.rochester.edu
Thu Dec 31 06:24:46 CET 2020


>I have (very) stupid questions: Why is Oberon OS is allowing the use of
>non-plain text source code entry? What is the benefit? 

1. Navigate to RiskFive.com
2. Open the B2 Framework Overview (find it in the left window and click)
3. Find the heading "Download B2 system revision 0.86". It is a 7z archive.
4. Using 7ZIP, unpack to the B2 subdirectory under the User directory in your V4 installation.
5. Start V4 under Windows. Navigate to B2 directory and study the code. Here is how:
    5.1  Look at System.Tool. You should see $User button. 
    5.2  Next to $User there is SubDirs. Push it with Middle Mouse. Select B2.
    5.3  Now you are in the B2 subdirectory. Push the *.Mod button with MM.
    5.4  Select B2.Mod, then B2Base.Mod, then B2ProcessorExample.Mod.
    5.5  Execute Colors.Normal to switch to black background.
    5.6  Study this code a little bit. Especially the parts after closing "."
    5.7  Edit.Open MODULE Data95021. Look at the line "comments are here". Open and read. 
    5.8  Try to appreciate why the author wrote and folded these comments.
    5.9  Try to appreciate that any other way would be less convenient.
6. You may not like what you see in B2. This is fine.
7. Ask "why should the B2 author like your approach, if you do not like the B2 author's approach"?

The benefit of writing and structuring this code in this way was that I wrote it  in 1997, and then I put it aside till a month ago. I have not looked at this code since I changed jobs. Now I can work on it in 2020 after reading this code *once*. The particular way I structured and formatted it made this possible. It is the benefit which you may not appreciate, but I certainly do.

> Would it be better to have ASCII (or UTF-8 or whatever) files 

Please define "better", as opposed to "the way I am used to".

> that would simplify so much the interaction with other systems?

Oberon System is a complete operating environment. It was designed to be both complete and standalone. All the tools are provided inside. OS was not designed to require development tools from other systems, like editors, linkers, compilers, etc. By design it does not "interact with other systems" at the level of its parts. It does interact via inputs and outputs. But not not expose its internal connections to be tapped from outside. 

You can think of the OS as being a complete processor board. Such a board is interacting with other boards via connectors at specified voltage levels, like for example 5 volts. But the designer would be surprised if you suggested that 5 volts have to be also used inside the board between the internal components. In fact, modern boards internally use 1.8 volts, or 1.2 volts, or 3.3 volts to communicate between the chips. You should not demand that all is 5 volts inside. These days are gone.

> If it is for code embellishment on screen and printout, 

Please look at B2. You may not like the way I organized my code. I am fine with others not liking my style. However, if you call my way of organizing my work "embellishments", then I will protest. These are not embellishments. These are very useful tools for me.

> what about implementing these features in tools at the OS level, as every other system do?

Every other system does not have these features which Oberon System has. So the other systems cannot use them. Syntax coloring (if you refereed to it) is completely different from "attention coloring". I used colors in my code to direct my own attention to important, less important, or "to do" sections. 

Automated syntax coloring cannot tell me, that there is something not quite finished in my code. Under Oberon I can highlight a section in red. I know it means "think more". No automated tool can offer this possibility.

If you Edit.Open MODULE Data95021.Mod and open the line "comments are here" then you may appreciate that conventional tools are nowhere close to V4 or to BlackBox. 

Also please note I am not a professional programmer. I am not coding CS algorithms which perhaps do not require this kind of information, which you will find in MODULE Data95021. It is a different domain than computer science software development. I found Oberon System tools perfect for me and I hope I can use them in the future.

>An Happy New Year to all of you!!

Happy New Year!



On Thu, 2020-12-31 at 01:02 +0100, Liam Proven wrote:
> On Wed, 30 Dec 2020 at 19:50, Till Oliver Knoll
> <till.oliver.knoll at gmail.com> wrote:
> > > Am 26.12.20 um 12:21 schrieb Liam Proven:
> > >
> > > It manages source code. Nothing else.
> >
> > At least as far as github.com is concerned, this is not quite true
> > anymore ;)
> OK, fair!
> > Github has grown to be a platform with many, MANY more features
> > which go way beyond a nice "web GUI wrapper around git". Just to
> > mention a few (over which I just "stumbled" recently myself):
> > * Web hosting of "project web pages" (which coincidentally are
> > managed/updated via a specific git branch containing all the HTML
> > respectively markdown files): https://urldefense.proofpoint.com/v2/url?u=https-3A__pages.github.com_&d=DwICAg&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=uUiA_zLpwaGJIlq-_BM9w1wVOuyqPwHi3XzJRa-ybV0&m=rh3OvEsm2AT1uE4xnBIB8mo3D0DPwfraW0YfyonLmmg&s=2l5F-MRvc5VLgp0Pq1BV3jO870HNIdrAKxgo6ue-3gI&e=
> Yes -- a friend of mine uses this to host his personal blog, for
> free.
> > * "Continuous Integration", with the possibility to define own
> > "actions" ranging from simple "code checking" to building
> > executables / containers / whatnot:
> > https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.github.com_en_free-2Dpro-2Dteam-40latest_actions_guides_about-2Dcontinuous-2Dintegration&d=DwICAg&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=uUiA_zLpwaGJIlq-_BM9w1wVOuyqPwHi3XzJRa-ybV0&m=rh3OvEsm2AT1uE4xnBIB8mo3D0DPwfraW0YfyonLmmg&s=Ol9b_FZW0NY2-Fnh9SCJYC7w-AVPKDjUSI2avH55mas&e=
> Yes, we use that in $DAYJOB.
> The amusing thing is: a tonne of work enabled Travis to generate PDFs
> and HTML and so on from Docbook, AsciiDoc and more. Which are then
> discarded.
> And the feedback we get is extensive, but the feedback most of us
> _use_  is "it worked" or "it didn't work" as the model the CI tool
> uses to build stuff is so far away from the files on my disk that
> mostly I understand nothing useful from the failures, other than that
> there was a failure.
> But I am a tech writer using tools for programmers. :-(
> > * Per project Wikis, issue trackers, project pages, ...:
> > https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.github.com_en_free-2Dpro-2Dteam-40latest_github_building-2Da-2Dstrong-2Dcommunity_about-2Dwikis&d=DwICAg&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=uUiA_zLpwaGJIlq-_BM9w1wVOuyqPwHi3XzJRa-ybV0&m=rh3OvEsm2AT1uE4xnBIB8mo3D0DPwfraW0YfyonLmmg&s=PWbx3Qr6hR7icqpQFkWtgl8nvbbGZUTk75q5LyNAm98&e=
> >
> > And probably way more.
> >
> > And yes, git has become the de facto industry standard for source
> > repositories - so no point in complaining about it ;)
> Also fair!
> > But this mandatory XKCD summarises it indeed perfectly:
> >
> >   https://urldefense.proofpoint.com/v2/url?u=https-3A__xkcd.com_1597_&d=DwICAg&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=uUiA_zLpwaGJIlq-_BM9w1wVOuyqPwHi3XzJRa-ybV0&m=rh3OvEsm2AT1uE4xnBIB8mo3D0DPwfraW0YfyonLmmg&s=7NQp1SIDbkNj3pnNLj-inCt9UixnXC-7JIGVR_6CuZk&e=
> >
> >
> > ;)
> Absolutely right.

Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems

More information about the Oberon mailing list