#TODO
# o check jrns last bug concerning parenthesis
# o xtc2xabsl:393 file not found
# o warning if goto(self); is used instead of stay();
# o IC comments are option is currently ignored? (hardcoded to off)
# o double include error
#DO NOT FORGET

#NOTES
# o DS are generated for all symbols, not only for used symbols

#DESIGN
# o processed_ccs and build_ccs cleanup !!!!!!

#IMPORTANT


#USEFUL
# o 
# o correct relative dtd pathes in doctype somehow
# o make error? method faster than O(#cu.size)
# o enum output leerer doc_comment
# o FilenameError for files not ending with .xtc
# o Documentation (class diagram)
# o compile option to preserve comments/changelog
# o automated testing using 'error' testcases

#NICE TO HAVE
# o xabsl2xtc single file code generation
# o suggested line breaks in xtc
# o arbitrary comment handling

#DONE
# o warning if filename does not match option name
# o ENDL in language_elements.rb
# O test with CR/LF
# o klammern, anfhrungszeichen zhlen
# o entity order
# o option definitions incremental
# o generate dump into hashfile based on filenames
# o shorter and easier keywords
# o skip decision { stay(); }
# o build process integration
# o fixed validation bug on associative operators
# o implement DS,IC generation
# o xabsl2xtc: implement code generation for declarations
# o implement xinclude stuff
# o implement declarations in XTC
# o branch for XTC
# o encoding problems , e.g. 'Gnne' on rexml
# o more performant symbol lookup
# o classify error messages and give line numbers
# o compiling multiple files at once
# o avoided implicit declarations
# o check shortend symbols agains symbol table, e.g. special-action.special-action-id, evolve-walking-parameters.execution-mode
# => verschiedene verkrzungen ausprobieren anhand von symbol table
# o short names on funtion calls
# o check parameter count, identifer on function calls, options, bbs
# o "!EISC" --> != for convinience
# o exp type validation / semantische validierung berhaupt
# o search symbol table by identifier AND type
# o avoid state/option parameter prefix repetition
# o initial state
# o target state
# o precedence bei operatoren
# o prototype parsing for symbols/parameters
# o TOOX
# o @parameterverkrzung rckgngig machen
# o common decision tree: ohne if ?, else erlaubt?
# o keywords in identifiern escapen: mit __keyword
# o decimal-value 100.0 --> 100
# o order attributes on xml output( => order of declaration :-) )
# o regular exp for real numbers
# o symbol table
# o dafr weitere xml-prototypen parsen
# o decide wether to get option-parameter symbols from xtc or from xml
#   => 2 pass parsing
# o &ball-symbols; -- includes erzeugen
# o Changelog handling

#NOT DONE
# o use modified XABSL engine to generate Symbols from C++ code 
#   via calls to registerXYZ called by registerSymbols by c++ files
#   => no need to patch URC, less redundant code
# ---------------- too-many deps to handle , maybe as button in RobotControl