Revision History - 2014
Version 1.6.1 (December 14, 2014)
- Added auto-scrolling. If the user is selecting a region with the
mouse, the window will automatically scroll if the mouse is near the
edge. This behavior is found in most editors today.
- The Chart Style window, when opened, will show the current settings.
Before, it was always defaulting to "default" in "pastel".
- Fixed a bug that caused the system to crash if an invalid
identifier was entered.
- Fixed a few minor spelling error: affect vs. effect.
Version 1.6.0 (December 7, 2014)
- Language improvements:
- Added a new constant: Pi. You can now used PI in your programs
without having to manually declare a variable or use the literal 3.14...
in your expressions. In generated code, it will map to the language's
- The Equal-To and Not-Equal-To operators can now compare two Boolean
- I added a bunch of identifiers to the "future expansion" list. These
will be invalid to use for identifiers.
- The Export to Image File tool now allows you to specify if there
will be a margin (measured in pixels).
- The Chart Style button, on the main toolbar, lets you select a color
scheme and a chart style. The color schemes match the ones found in the
Print and Export to Image File windows. This window will be expanded in
- I also added a "gray scale" color scheme.
- Double-clicking (or right-clicking) on the flowchart background will
no longer open the Program Attributes window. Users found this annoying.
- I made the Input Shape a tad more blue. It appeared purple on some
- Bug fixes:
- If an array element is out of bounds, the error window was not
showing the correct upper bound.
- If a variable name is invalid (predefined), the system was not
alerting the programmer or causing an error
Version 1.5.0 (November 22, 2014)
- The Variable Watch window now can display arrays.
- Added a new intrinsic function: ToChar(). It will convert an
integer, representing a character code, into a character.
- Source Code Viewer now supports:
- Added Lua
- Added Ruby
- Added VBA (Visual Basic for Applications)
- Bug fixes:
- Made internal changes designed to eliminate a comma/decimal
point error. The "decimal mark", used in real numbers, can either be a comma or period -
depending on the culture. Europe, in particular, uses a comma. The
software was not handling the difference well. The new code will use
a period for all cases.
- Fixed a minor bug that affected the code generator. It was not
clearing the 'current statement' color properly.
- Removed multi-dimensional arrays. They are not really needed for
an introductory programming tool. Also, multi-dimensional arrays are
supported by the new generated languages.
Version 1.4.3 (October 18, 2014)
- Made some changes to avoid the crashing issue that affects some
users. I'm pretty sure that the error was resolved.
- I updated the internal parser tables so that variable
identifiers and string literals support Unicode characters.
Identifiers can now start with any Unicode "letter" character and
can be followed by zero or more Unicode letters or the digits 0..9.
- The Source Code Viewer now saves text in UTF-8.
Version 1.4.2 (October 17, 2014)
- Made some minor changes to how stepping works:
- The logic used to display the current shape was improved.
- Comments are now skipped.
- The Layout Windows tool is now displayed with a white background.
This is purely cosmetic.
Version 1.4.1 (October 16, 2014)
- When stepping through the Main function, the system will now wait on the
"end" terminal. This is the behavior on all other functions, but I forgot to give
this behavior to Main.
- Fixed a flaw in C++ generated code.
- The Source Code Viewer now saves text using the carriage-return
+ line-feed combo to terminate lines.
- Added a window that will catch any unhandled errors and copy the
error information to the clipboard. Hopefully, this will help solve
Version 1.4.0 (October 13, 2014)
- Debugging / Demonstration:
- Added a new Variable Viewer window. When stepping through a
program, this window will show the current variables. Each data
type is displayed using a unique color: integers (blue), real
numbers (purple), strings (red), Booleans (cyan). Arrays will not be
displayed - at least for now.
- The Layout Windows tool was revamped. Since variables can now be
displayed, the number of different screen configurations also
increased. The application will now display a window with several
preview pictures. You can either select "Layout Windows" from the menu or press
- When stepping through a program, the system will now keep the
current statement visible. This means it will automatically change charts and/or move the scrollbars.
- The system will also jump to a shape if an error occurs.
- If an error occurs when a function returns a value, the ending
terminal will now be highlighted in red.
- When a program is being loaded/saved, the status bar (at the bottom)
lets the user know what is happening. Also, the toolbars are
disabled at this time.
- The 'Export to an Image File' utility now adds the name of the
flowchart to the default name.
- The main window now zooms in and out far more smoothly.
- The Console Window was improved. The "chat bubbles" maintain better
margins with the left and right side.
- The Flowchart Style dropdown was replaced with an icon. This was
done to save space.
- Added an icon for the Variable Viewer. The Source Code Viewer was
changed to match the style.
- Source Code Viewer:
- Added C++.
- Source code was greatly improved. If a feature (such as a random
number generator) is not used, then the source code will not contain
- A new dropdown menu was added to the Source Code Viewer. The
dropdown displays the "style" of the source code. Beforehand, the
language dropdown had text like "Java (hanging brace)" which got too
verbose after I added C++. For now, the style dropdown just
displays "hanging brace" or "aligned brace" for C++ and Java.
- If the Copy Button is clicked on the Source Code Generator, it will tell the
user if text was copied. Also, if the source is empty, an error will no
- Bug fixes:
- Fixed a bug with Call Statements. If the program is executed, and
the statement is still gray, it caused a runtime error.
- Also fixed another bug with Call Statements. If the user causes a
syntax error, then the error will persist even after it is edited.
Basically, it wasn't resetting its "Syntax Status".
- The step value in For Loops cannot be negative. This is just a
limitation by Flowgorithm. If a negative value is used, an error
will now occur.
Version 1.3.3 (September 13, 2014)
- If a shape is edited, while the program is running (i.e. stepped
into), the flowchart will now stop and reset.
- Programs will now only be marked as 'changed' if a shape is
changed (rather then cancelled).
- The error messages for syntax and lexical errors were improved. They
were a tad obtuse before.
- If the Layout Windows feature is used, and a window is maximized, it
will be normalized.
- Source Code Generator:
- Fixed a minor Visual Basic generation bug. The source
contained "end class" rather than "end module".
- Fixed a Python generation bug. If code is generated, when a
Declare Statement is incomplete, the system reports an error.
Fortunately, it does not crash.
- Generated code for C#, Java, and Python now handles backslashes.
Flowgorithm doesn't have backslash override codes. So, a backslash
is always just a backslash. The generated code will now convert \ to
Version 1.3.2 (August 26, 2014)
- A bug with copy and paste was fixed. The order of pasted items would
sometimes be incorrect.
Version 1.3.1 (August 24, 2014)
- Fixed an alignment bug for the false branch of If Statements. This
was purely cosmetic - and I doubt anyone would have noticed.
- Python print statements, when incomplete, will show parenthesis.
This is cosmetic.
- Added the Program Attributes window to the Program Menu.
Version 1.3.0 (August 22, 2014)
- Flowcharts can be saved (one function a time) to image files. You
have the same basic features as Print.
- Python was added to the Source Code Viewer
- Added a "Check for Updates" feature. It doesn't run automatically. I
didn't want it to become an annoying popup window on lab computers.
- When auto-arranging windows, the system will normalize windows if
they were maximized.
- Fixed a bug in the Source Code Viewer that affected inputting into
an array element.
Version 1.2.0 (August 14, 2014)
- Flowcharts can now be printed. The feature allows users to select
one of three different color schemes: the default pastel, black and
white outlined (a great non-color option), and black and white solid.
- Added some links to the Help Menu.
- Made some internal changes that should help refresh the screen
Version 1.1.2 (August 11, 2014)
- Some minor changes before the semester begins.
Version 1.1.1 (August 10, 2014)
- Some minor cleanup
- Input Statements can now read array values (like they should have
Version 1.1.0 (August 8, 2014)
- Comments were added to the flowcharts. Comments do not affect how
the program is interpreted or behaves. They are useful for documenting
information about the program - for programmers to read.
- Added zoom buttons to the Console Window.
- Added zoom buttons to the Source Code Viewer.
- Gaddis Pseudocode was improved. If there is only one function, Main,
the Source Code Viewer will only show the statements rather than a
"Module Main" block. This was designed to mimic the examples used in
Version 1.0.2 (August 6, 2014)
This was the first release of the program. There was a version 1.0.0 and
1.0.1, but they didn't make it to the site.