Syntax coloring of algorithms Tutorial Theme No anonymous editing Algorithms in a different namespace Preview, includes up-to-date algorithm Initial content for pages/algorithms Talk page support Fix editing controls overlapping wiki content Better phone support
- Name, url, etc.
Editing algorithms with better UI
- More algorithms
Much simpler IDE – don’t use the inspector? IDE bugs, like stopping and then playing again Breakpoints Speed slider goes faster Sliders on Firefox Merge IDE and animation code Streamline and optimise inspector IDE / visualisation code.
- Console, stack view, etc??
- IDE handle step back into prev run and step forward into next
Remove use of requireJS
Use SVG for all button images
- Better designed interface between interpreter and visualisation
- Handle running scripts from visualisation better, multiple running, stopping etc.
Stepping over should still visualise code stepped over
- Way for visualisation to control code running? – need to wait for visualisation sometimes
Better defined interface, don’t pass AST node and execution-context to visualisation
- Use JSHint to validate all code
- Run unit tests and check options syntax, before being able to save (or warn)
Validation code for algorithms - Unit tests
- How to support multiple visualisations sharing code?
Run algorithms backwards Run visualisation update at start and end
Run step-counter web worker in sync with user, remove ‘‘persistentGlobals’’
- Fully conform to ES-262 test suite
- Interpreter handling of getters and setters – stops pollution of values when viewed in console
- Interpreter handling of conversion to numbers / values etc – enables breaking in getValue code
- Custom non-JS language features, eg. multi-threaded execution for threading algorithms (relatively easy)
Code style questions
- Recursive vs. iterative
- Most efficient vs. simplest
- Using JS style vs. simplest eg. inserting into an array using splice vs. iterating
- What data structures to use for an algorithm