The beautiful Asciidot language develloped by Aaron Janse is inspired by ascii-art and electronic circuits.
You may want to try it online here or by cloning the repo.
git clone https://github.com/aaronduino/asciidots
cd asciidots
python __main__.py samples/fibonnacci.dots -d
And you should see the dots in red moving along the lines... But you will quickly find that you have troubles to understand more complex programs or debug them.
This is where this graphical debugger comes.
With this, you will be able to:
- play with the time and go back to see where dots comes from
- See the value and id of a dot when you hover it
- Zoom on your code
- Drag your code around in the windows to explore other parts
- But don't get lost in the code because you can reset the view
- Enjoy even more the beauty of ascii-art with nice colors and font
- Don't get distracted with the clean fullscreen
- And more debug mode to debug Asciidots itself
The more debug mode lets you:
- Know the class of the chars
- See where wraps lead
- See the values of all dots at the same place
- See all output at the same time
- Edit the code directly in the app
- Give inputs to your code
- Make gifs of your code
- Right : Next step
- Left : Previous step
- Ctrl + Right : 5th next step
- Ctrl + Left : 5th previous step
- Ctrl + A : Toggle auto advance in the execution
- - Decrease font size
- + or = Increase font size
- Ctrl + B Return to the beginning of the execution
- Ctrl + R Reset the view (size and pos)
- Escape Quit
- Ctrl + M Toggle the more debug mode
- Click and drag to move the code
The grapical interface is based on pygame, so you need to have it installed. The command line interface uses click, you must have it too. Of course, you need an asciidots interpreter.
pip install pygame click asciidots
git clone https://github.com/ddorn/AsciidotsDebugger
cd AsciidotsDebugger
That's it, now you can try it ! You can find more examples of Asciidots programs in the official repo along with the documentation of the language.
python debugger.py samples/primes.dots
Enjoy it !
---
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.