lines to be mutually perpendicular so the system runs an iterative solver kinda wheels the lines around and figures out how to turn them into something that mutually perpendicular how to turn them into a rectangle so basically he the system doesn't know anything about rectangles he was able to get it to draw a rectangle by directly applying the set of constraints and what makes this a program as opposed to just a picture is that these constraints are dynamically maintained so he's got his rivet that he drew and he resized this corner of it and kinda resize some other things the solver kicks back in turns back into a perfect rectangle so essentially he's created a program that draws a rectangle but he didn't do it by writing code he did by directly manipulating the data and directly applying a set of constraints to them and so this kind of a simple example and then he went off and did fancier things like here's a bridge simulation so it actually simulates the physics for bridge he drew this by hand the um the numbers here represent the tension in those particular spans of the bridge and he can vary the weight that the load that's hanging off of the bridge and it kinda deforms and um the system the sketchpad system doesn't know anything about bridges he creates this bridge simulation program by directly drawing and by directly applying asserts that a um very general constraints so 