

The first lines of code were written during the summer and for September a first more or less functional version was available. I think I started drawing the first schemes and thinking about its internal structure in July 2006. In fact, I was not satisfied by the result of other NSD-editors, so I started writing my own one. Structorizer comes with an elaborate user guide, available online and for download. The debugging features include stepwise execution, highlighting, pausing, breakpoints, variable display (with value editing), and configurable running speed, and eventually the possibility to call other diagrams as subroutine.Īn impressive feature is the "Runtime Analysis" collecting and visualising execution counts, operation loads, and test coverage. You may also derive diagrams from source code (by now languages Pascal/Delphi, ANSI-C, COBOL, Java 8, and Processing). elem_type var_name <-, which makes them compatible to Java declaration style.Structorizer is a tool for working with Nassi-Shneiderman Diagrams (NSD).īeyond mere creation and editing, it even allows to execute and debug them (within certain restrictions), to control a painting turtle on a drawing canvas, and to export the formed algorithms to several programming languages (still requiring postprocessing, of course). Specific syntax for ARM export was modified a little: Array initializations now need an empty bracket pair after the element type, e.g.#1015: ARM export to file caused a NullPointerException.#1014: Defective export of Java-style array declarations to several languages (C, C++, C#, Java, Javascript, bash, ksh).#1013: Executor had a serious vulnerability to hang up in an eternal loop on assigning an array element in some constellations.#1012 (Code Preview): The mapping between elements and generated code lines got compromised after line insertions in preceding areas.#1011 (ARM export): Bad code resulted from CASE elements without default branch.#1010 (ARM export): The condition logic of REPEAT loops was inverted.

#1008 (ARM export): Address assignment translation was defective in GNU mode.#1007 (ARM export): Character literals (single-quoted) were not properly recognized and string/character literal content support was too restricted.#1004 revised (defective index transformation), ARM-specific export option "Transform array index to memory offset" revoked, new memory alignment mechanism in GNU style ARM code (.#1007: New ARM-specific export option to append 0 terminator on allocating string contents.ARM generator: In Gnu mode, a _start label is automatically placed now ( #967 (comment)).#1062: Mode changes in Find & Replace failed to reset the results tree.#1061: Python export failed to suppress all instruction translation in mode "No conversion of expressions/Instruction contents".#1059: COBOL import of conditions completely redesigned (now strictly state-driven).#1057: COBOL import now converts LENGTH OF into sizeof().#1049, #1058: COBOL condition name resolution was still defective, particularly in negated context.#997: NullPointerExceptions on code import with FOR-IN loops.75 (without digits on the left-hand side of the decimal point) had still failed #851/3: COBOL import of float literals like.#492: Missing or obsolete Element name placeholders accomplished in several locales.#1064: COBOL import now applies permanently disabled state to section and paragraph markers (abused Call elements).#1047: Isolated NSD batch export with new option -k, revised naming conventions in combination of options -o and -k.#84, #250: Chinese locales slightly updated w.r.t.#1056: Completion and correction of the French GUI locale.#1067: Certain execution errors used to slip through clandestinely, thus causing inexplicable consecutive faults.

