Details of plans for upcoming versions as well as current known issues and other news
- Out and Ref Keywords
-
Contributor(s):
Kevin (creator)
Tim (co-owner)
Information:
Support for keywords out and ref for method invocation
Expected Completion Date:
Unknown
Planned For Version:
2.2
Current Status:
- Planning
- Implementation
- Debugging
- Ready For Deployment
- Invalid operand to power operator may throw an incorrect error
-
ISSUE:
Certain invocations of the power operator (which should cause an error) may cause an incorrect error message
(e.g. 2.3 ** 'c' // might report "Right operand '2.3' non-numeric" when it should be "Right operand 'c' non-numeric").
The underlying reason for this has to do with the order of operations that is followed for evaluating power operations.
WORKAROUND:
No workaround is currently available for this issue.
PLANS FOR FIX:
Will be fixed in the next released version
* If other issues found, please email me about them with the subject "XNA Debug Terminal Issue" (email found in
Source Code page.) Please include the terminal statement causing the problem,
expected and actual result, and any source code from your project that pertains to that statement.
However, if you would like to try your hand at fixing it yourself, then simply request the
source code
and let me know of the specific bug (statement, expected and actual result) you are trying to fix.
Other News
Click to show older posts
- Delay of version 1.2 (Posted 12/1/2009)
-
Version 1.2 has been delayed by a couple months (current deadlines have been modified so are correct as stated).
This is due to my current focus on courses for this semester. When this semester is over, I will resume work on
the next version.
- Plans for version control (Posted 12/1/2009)
-
I would like to move my project onto a server with SVN set up for global read access. It is currently under SVN control
but needs to be moved to a more secure server before I can grant public access. I, along with a few others, will have
write control. The expected deadline for this move is set at January 15, 2010.
- Bug tracking (Posted 12/1/2009)
-
As of yet I have reported bugs in the download page. I would like to have actual bug tracking software instead and will
look into this. The deadline for this is February 1, 2010.
- Update on Version 1.2 (Posted 1/4/2010)
-
I am working with someone to develop a new way to recognize expressions. The current way uses various heuristics to
determine the different subexpressions and their precedence. The new way uses proper techniques in developing an interpreter
by going through lexical analysis, parsing, and semantic analysis.
The reason behind this refactor is to vastly improve the speed and ease of adding support for a new expression to the terminal,
as well as: more complete support by closely following C#'s grammar rules posted at
msdn, more accurate and
informative error messages, and perhaps faster processing of watch expressions. So far we are
close to completing the lexical analysis (tokenize) stage.
We haven't set a date for completion, however I will update this with the latest news on our progress. Until this is done,
support cannot be added for any new expressions, however this refactor alone will bring better overall support.
BTW, this new version may become version 2.0 due to extent of the change in code.
- Update on bug tracking (Posted 1/4/2010)
-
Bugs will be stored in a database and will contain unique IDs. They will be accessible from a link on the main navigation
on the left side. This will present a listing and short description of each known bug and will link to a page with the
complete information. This is not implemented yet and cannot be implemented until the refactoring (mentioned above) is complete.
At that time all current bugs under the new system will be inserted into the database and the interface will be made.
- Update on Next Version (Posted 1/27/2010)
-
So the lexer and scanner are completely done. The parser is a lot more difficult than I thought and as a result, we are
looking towards using Antlr instead. Since the Spring semester has started, I won't be able to work on this too often.
We will try to get Antlr working soon so the newest version can be released, although we don't want to rush it if there
are problems that need to be resolved. If anyone knows Antlr well and would like to offer help or advice, please feel
free to email me (email found in source code page). We still might continue working on our
own interpreter, however that won't be until this semester is over. In the meantime Antlr should do nicely. Sorry for
the delay, but the improvements should be worth the wait.
- Version 2.0 on its way! (Posted 6/15/2010)
-
We decided to go with Antlr to generate the new and greatly improved parser. We actually bought the
book (which is completely worth it) and created our own grammar that hooked into the pre-existing code for different expressions. So far
it has passed all previous tests except one (which it will pass before it is released) and has shown promise on an additional set of tests
for parenthetical expressions, array indexing, and using the dot operator on a literal (e.g. 3.ToString()). We plan on implementing a cursor
for moving within the current terminal text as well as some other UI and code recognition improvements and are shooting for release around
mid July. Any feature requests or other feedback are welcome. Just shoot me an email: kcherr1[at]tigers[dot]lsu[dot]edu with the subject
of "xdt" or "xna_debug_terminal."
- Update on 2.0 (Posted 7/27/2010)
-
All the C# functionality that 2.0 will have has been coded. We have gone from around 135 unit tests in 1.1 to over 350 (and passing everyone
of them). The only tasks left are in adding a few more tests, UI improvements, and coding documentation. Sorry to postpone the release, but it
should be done by mid August. Here is a short list of the improvements in 2.0: several bugs and inconsistencies fixed, complete support for literals
(e.g. expressions such as 12E5, 23f.ToString(), -89.6.ToString().Length, "Hello World".Length, etc.), complete support for assignments, complete
support for arithmetic, support for array assignment and accessing (no array initialization, e.g. iArray = new int[] { 1, 2 }), text cursor that
allows you to navigate through the current expressions (can use left/right, home, end, ctrl+left/right, ctrl+backspace/delete), support for pasting
text from clipboard, automatic clearing of terminal for entering in the next expression, can use '@' to prefix identifiers, and a lot more.
- Version 2.0 is released! (Posted 8/22/2010)
-
We'd like to announce that version 2.0 has finally been released! A lot of work and restructuring was done to produce this version, and we wrote a
massive number of testcases along the way. Overall it is a major improvement over 1.1 and can be downloaded now on the Download
page.
- Version 2.1 is released! (Posted 2/1/2011)
-
XNA Debug Terminal 2.1 is out now! Although this is not as big of a release as 2.0, there are bugfixes (particularly in
dealing with identifiers and numeric literal suffix collisions). Of note, the terminal now supports syntax highlighting,
operator-equals expressions work, we've introduced a shorthand operator to Math.pow (**), built-in Terminal constants (shown in
HowTo page),
word cursor movement (movement using Ctrl) should behave as it does in Visual Studio, window resizing should also behave properly,
and many more additional testcases were written and tested against. Check out the Download page for
this updated version.