The extra links in the article are great stuff. I’m very curious about checking out Oberon

    • jadero@programming.dev
      link
      fedilink
      arrow-up
      6
      ·
      1 year ago

      It’s been so long since I first read that that I forgot about this section:

      Operation activation

      Another example that illustrates our strategy is the activation of operations. Programs are not executed in Oberon; instead, individual procedures are exported from modules. If a certain module M exports a procedure P, then P can be called (activated) by merely pointing at the string M.P appearing in any text visible on the display, that is, by moving the cursor to M.P and clicking a mouse but- ton. Such straightforward command activation opens the following possibilities:

      1. Frequently used commands are listed in short pieces of text. These are called tool-texts and resemble customized menus, although no special menu software is required. They are typically displayed in small viewers (windows).
      1. By extending the system with a simple graphics editor that provides captions based on Oberon texts, commands can be highlighted and otherwise decorated with boxes and shadings. This results in pop-up and/or pull-down menus, buttons, and icons that are “free” because the basic command activation mechanism is reused.
      1. A message received by e-mail can contain commands as well as text. Commands are executed by the recipient’s clicking into the message (without copying into a special command window). We use this feature, for example, when announcing new or updated module releases. The message typically contains receive commands followed by lists of module names to be downloaded from the network. The entire process requires only a few mouse clicks.

      Anyone remember the Melissa worm? Or perhaps been negatively affected by clicking a link in an email?

      Every convenience comes at a cost. I wonder if he ever revisited that concept with an eye to how similar capabilities became the bane of our existence.