Release notes


24.4.1 (Apr. 15)

The :? eqnc Question instruction checks if a sequence of logical propositions are logically equivalent.
Added the \table{} fomatting command to create nested tables.
Added the \align{} fomatting command to create nested align figures so that an align figure may be created within a table.

24.4.0 (Apr. 10)

Added the \int{} formatting command to typeset integrals and the closing of definite integrals.
Fixed some symbol encodings.
Fixed some structures that did not allow blank lines in the code.

24.3.2 (Mar. 31)

Added the &steps=n optional argument to specify the number of steps to simulate in the computation of a Turing machine using the :sim command.
Extended the abbreviated syntax {a,b}->X,R and {a,b},R for Turing machines to work with multiple tapes.
Improved error handling.

24.3.1 (Mar. 18)

Added a shorthand syntax for Turing machines to create a list of instructions of the form r⟶r,m, where r belongs to a set of symbols.
Fixed some issues with symbol mapping.

24.3.0 (Mar. 13)

Added a shorthand syntax for Turing machines to create a list of instructions of the form r⟶w,m, where r belongs to a set of symbols.
Added text expression options .
Added the ({plain block command} \{} . The font formatting commands are now aliases of the plain block command.
Any keyboard character can be printed by typing a backtick (\[]) before it. This allows the printing of characters as they appear even if they have special meaning in Grafstate.

24.2.4 (Feb. 28)

Added the \stack{} formatting command to visualize the contents of a stack.
Fixed a bug related to the :sim command that caused the display of the stack in the stack trace of a PDA to lose an element after taking a transition having the \e,\e->\e action.

24.2.3 (Feb. 21)

Added the \[∶cnf} option for CFGs which checks if a grammar is in Chomsky normal form.
Added the &vo= optional argument to the :sim command for CFGs to test if a string is derived by a variable other than v0 .
Error messages include the exact line number of the error.
Blank lines are preserved in the Grafstate code for Figures and Structures.
White space at the beginning and end of lines is preserved in the Grafstate code for Figures and Structures.
Fixed a bug that sometimes caused code containing an error to be deleted from the editor.

24.2.2 (Feb. 11)

Added 6 instructional error messages for the description and simulation of PSGs .
Fixed a bug that could cause :? gnfa to return an error message for a path containing the expression ε⋃c, where c is some symbol.

24.2.1 (Feb. 7)

Bug fixes

Fixed a bug with :? reglang and :? gnfa that resulted in false negatives when testing some regular expressions with unions.
Eliminated a message that was occasionally returned by :? gnfa warning of alphabets not matching for valid preservation paths.
Fixed a bug with the regular expression Simulator ( :sim ) that produced a false negative for nested regular expressions including unions with ε.

Other improvements

:? reglang is faster for many comparisons.

24.2.0 (Feb. 4)

New features

The Symbolic calculator instruction := mx can compute row operations on matrices.

Bug fixes

Fixed an issue where the symbol 0 was sometimes being interpretted as the empty string when generating a regular expression with the :? gnfa Question intruction .
Fixed an issue with GNFAs where a self loop on the symbol 0 was sometimes being ignored with the :? reglang Question intruction .

24.1.2 (Jan. 31)

New features

Added the math text command \mx{} for displaying a matrix inside text.

Bug fixes

Fixed a bug that caused the Simulator to simulate the original version of a computational structure after it had been updated.
Fixed a bug that caused the :? reglang Question instruction to return an error when comparing certain GNFAs with states without loops.

New functionality

If you create an unnamed structure , then Grafstate will create a name for that structure automatically and add that name to your code.

UI improvements

Added some new keyboard shortcuts .

24.1.1 (Jan. 27)

New features

Added an option to submit feedback by clicking on Feedback at the top of the Shell.

UI changes

Replaced the Insert menu at the top of the shell with the new Edit menu.
Added space at the bottom of the Shell so text is not hidden at the bottom of the browser.

Bug fixes

Fixed a bug that caused the code generator to declare computational structures with the :fig command instead of the :+ command.
Other minor bug fixes

24.1.0 (Jan. 7)

New features

The :? reglang Question instruction compares two regular languages defined by DFAs, NFAs, GNFAs, or regular expressions.
The :? gnfa Question instruction checks whether a computation sequence is a valid preservation path in a GNFA.

Other improvements

Improved Login∕Sign up process
Improved error handling

23.11.1 (Nov. 13)

Improved error handling for computational structures
Improved error handling for simulations

23.11.0 (Nov. 5)

New features

The :? lexorder instruction checks whether a sequence of strings is in lexicographical order .
The :sim command can test if a string is matched by a regular expression .

23.10.2 (Oct. 22)

UI changes

When creating an unnamed structure in the editor , a name is assigned to the structure and added to the Grafstate code.

Bug fixes

Resolved the name conflict could happen when updating a structure.
Fixed a problem in the Symbolic Calculator that resulted in some functions not being plotted.
Corrected the formatting of upper and lower limits of the \sum{} expression.

23.10.1 (Oct. 17)

Bug fixes

The Export to PDF feature works again.
Minor corrections to the rendering of some of the symbols.

23.10.0 (Oct. 13)

This is the first numbered version of Grafstate.

New features

Added width and center options to ∶sim.
Margin Notes are cached so they load faster.

Other changes

The Language Guide has been moved from the Margin. You do not have to be signed in to read the Help pages.
The keyboard sequence \\ (in addition to // ) produces a line break when use as part of a test line.
When a line break symbol ( \\ or // ) is used on its own line, it produces a new line. A new line symbol can now be deleted in the editor as normal text.

Bug fixes

Fixed an issue where updating a ∶sim command or reading a ∶sim command from a document would cause an error saying that the structure could not be found.
Fixed the symbol mappings.