[Oberon] Fwd: IDE with integrated source level debugger and LuaJIT VM running the Oberon System

Michael Schierl schierlm at gmx.de
Sat Feb 15 19:58:19 CET 2020


Hello Rochus,


Am 15.02.2020 um 02:59 schrieb rochus.keller at bluewin.ch:
> Correction: I posted the wrong link to the Windows binary. Here is the one to the IDE: http://software.rochus-keller.info/OberonIDE_win32.zip

First impression: Quite nice.


Some feedback:

1) Being able to navigate the stack and looking at local variables of
other stack frames is very useful. However, recursive pointers are not
really clear in the view (i.e. when x.next == y and y.next == x).

2) Type guards seem to be lax (duck type-ish). In other words v(T2).q
does not trap if the actual type of v has a field q, even if it is
another type than T2 that has this field. I did not test how type tests
(v IS T2) behave, but I fear they behave the same way. I also did not
test if this can lead to type confusion (storing a value in a variable
of different type) and as a consequence to a crash.

3) While typing inside the editor (having an incomplete command with
syntax errors), the IDE crashed without warning and the file was lost.
Apart from fixing the crash bug (probably due to error highlighting),
you should probably also add some autosave feature so the file is not
lost in case of such a crash. I was able to reproduce the issue with
this short file, when trying to place the cursor after the colon in the
(only) line that start with BEGIN and ends with a colon:


MODULE Crash;

TYPE T1 = RECORD END;
  T2 = RECORD q: INTEGER END;

PROCEDURE Foo*;
VAR v: T1;
BEGIN v(T2).q :
TRAPIF(TRUE)
END Foo;

END Crash.


Regards,


Michael


More information about the Oberon mailing list