Skip to content

Latest commit

 

History

History
62 lines (46 loc) · 3.09 KB

unsupported-features.md

File metadata and controls

62 lines (46 loc) · 3.09 KB

Unsupported features in Python Tutor

This tool currently does NOT support these language features.

Some of these will eventually be supported, but others probably won't, due to implementation challenges and other priorities.

Email philip@pgbovine.net with more bug reports and use the "Generate shortened link" button to include a URL so that I can reproduce them.

For more details on project status and issue prioritization, check out these videos from March 2018:

C and C++

JavaScript

  • promises
  • asynchronous event-driven code
    • including setTimeout, setInterval, etc.
  • anything that operates on webpages, such as DOM manipulation, alert(), prompt(), confirm(), etc.
  • variable names that contain special characters like '$'
  • Date() object

Python

  • some infinite loops: the server times out without showing partial results or good error messages
  • asynchronous code
  • random number generators and user input (via input() or raw_input()) sometimes don't work well together

Other (language-agnostic)

  • Unicode doesn't work well in general (especially for Ruby and Python 2); use ASCII characters when possible
  • Passing in command-line arguments via argv[] array
  • Multi-threaded, concurrent, or asynchronous code
  • Anything involving GUI programming or GUI/webpage components
  • Reading data from external files; put all your data in strings when possible
  • Interfacing with databases, networks, or other external resources
  • Importing external 3rd-party libraries
  • Code that is too large in size; shorten your code!
  • Code that runs for too many steps (e.g., > 1,000 steps) or for a long time
    • shorten your code to isolate where you want to visualize and debug
    • or set Python breakpoints using #break comments
  • If you're behind some kinds of firewalls or proxy servers, the visualizer may not work

Look through these issue trackers for additional bugs and unsupported features: