00:00:00 david-pilo
projects/pvts ± |main |→

Ever wondered what the Quicksort Algorithm looks like?

Visualize lists, pointers and function calls in your code. PVTS is a visual interpreter for the Scheme functional programming language.

It is great for teachers and students as a supporting learning tool.

PVTS is an executable JAR file and requires the Java Runtime Environment (JRE). Get it here.


List example

Linked List Viewer

PVTS will show you all the linked lists you have in your code. It will help you understand how pointers in linked-lists work.

Calls example

Function Call Viewer

Binary functions as Fibonacci are more easily understood visually. PVTS will draw the functions you defined and called.

Environment example

Environment Viewer

Keep track of the variables and functions you have defined in the global environment. A list of these variables and functions is easily accessible to review them.


Fibonacci Function Calls example

The figure on the right is an example of running the code below in the PVTS visual interpreter that demonstrates how the Fibonacci Algorithm works in a functional programming environment.

; Lets define Fibonacci:
(define (fib n)
  (cond
    ((= n 1) 1)
    ((= n 0) 0)
    (else (+ (fib (- n 1)) (fib (- n 2))))))

; (fib 6) evaluates to
(fib 6)
Fibonacci function calls example

Let PVTS help you learn the basics of functional programming in Scheme.

Although Pilo Visual Tools for Scheme is a basic interpreter (learn more about PVTS language support), anybody that is learning the basics of recursion or wants to enhance their understanding of how pointers and lists work can benefit from giving this a try.

PVTS complete example