[Oberon] SystemV - Viewer Scroll
andreas_pirklbauer at yahoo.com
Sat Mar 23 09:10:37 CET 2019
> No I don‘t. I‘m happy with the scroll speed we got. Tomas just asked
> why the scroll code is asymmetric, and the main reason is: Using standard
> Texts API it’s easier to find the end of a line than to find the start of a line.
> As you demonstrated guessing and forward reading is faster than backward reading.
Yes. The question on why there is asymmetric code is answered now.
For click-by-click scrolling, the existing code in the Original Oberon
system (and in FPGA Oberon) - which just redraws all lines - is entirely
adequate. It’s only in the case of continuous scrolling that it is too slow.
PS: This is, in fact, a good example of “making it as simple as possible”.
By choosing not to implement continuous scrolling, the code in Original
Oberon (which is taken over 1:1 in FPGA Oberon) became super simple
(only 3 lines for backward scrolling in TextFrames.Show). It also does
not have to deal with potential memory leak issues, when continuously
allocating new lines in the heap (which however is easy to address).
More information about the Oberon