disastrs :: present! :: notes

?(?-) (Applicative order rules)
<> ((?x) (?y) <=!=>) (<> ?x ?y)
<> ((?x) ?. <=!=>) (<> ?x (?.))
<> (?x ?y <=!=>) (<> ?x ?y)
<> (<!> ?x ?y) ((?x) (?y) ?(?x ?x) <=!=>)
?((?0 ?1 ?:) ?:) 1024 1024 size
?(?-) (First we may begin by getting the mouse position)
?(?-) (Math)
<> $color1 ((color #ffffff))
<> $color2 ((color #000000))
<> $color3 ((color #ff0000))
<> $color4 ((color #00ff00))
<> $color5 ((color #0000ff))
<> $color6 ((color #72dec2)) ?(?-) (the merveilles color)
<> $screen-size ((number 1024))
<> (sqrt-intermed (?i) (?n) (1) (?x)) ((?i) (2) `-)
<> (sqrt-intermed (?i) (?n) (0) (1)) ((?i) (1) `-)
<> (sqrt-intermed (?i) (?n) (0) (0)) (sqrt-intermed ((?i) (1) `+) (?n) 
                                ((?n) ((?i) (?i) `*) `<)
                                ((?n) ((?i) (?i) `*) `=))
<> (sqrt (?n)) (sqrt-intermed (1) (?n) (0) (0))
<> (square (?x)) ((?x) (?x) `*)
<> (distance (?a ?b) (?c ?d)) (sqrt ((square ((?c) (?a) `-)) (square ((?d) (?b) `-)) `+))
<> (read-event ?~) (handle-event ?~ read-event Any)
<> ((state ((?a ?b) ?s) ?t debouncing) handle-event (Touch (?x ?y ?z)))
   ((state ((?x ?y) ?s) ?t listening))
<> ((state ?s ?t listening) handle-event (Touch (?x ?y 1)))
   ((state ((?x ?y) ?s) ?t debouncing))
?(?-) (
  c - Clear
  q - quit    
  1 - Circle
  2 - line
  3 - triangle
  4 - quadrangle
  5 - fill-circle
  r - Rotate-color-pRev
  t - roTate-color-nexT
)
<> ((state ?s ?t ?f) handle-event (Key (?x c)))
   (draw fill-rect (number 0) (number 0) $screen-size  $screen-size $color2
    draw-ui (state () ?t listening))
<> ((state ?s ?f) handle-event (Key (?x q)))
   (cmd quit)
<> ((state ?s (?t ?r) ?f) handle-event (Key (?x 1)))
   (draw-ui (state () (circle ?r) ?f))
<> ((state ?s (?t ?r) ?f) handle-event (Key (?x 2)))
   (draw-ui (state () (line ?r) ?f))
<> ((state ?s (?t ?r) ?f) handle-event (Key (?x 3)))
   (draw-ui (state () (triangle ?r) ?f))
<> ((state ?s (?t ?r) ?f) handle-event (Key (?x 4)))
   (draw-ui (state () (quadrangle ?r) ?f))
<> ((state ?s (?t ?r) ?f) handle-event (Key (?x 5)))
   (draw-ui (state () (fill-circle ?r) ?f))
<!> (next-color $color1) ($color2)
<!> (next-color $color2) ($color3)
<!> (next-color $color3) ($color4)
<!> (next-color $color4) ($color5)
<!> (next-color $color5) ($color6)
<!> (next-color $color6) ($color1)
<!> (prev-color $color1) ($color6)
<!> (prev-color $color2) ($color1)
<!> (prev-color $color3) ($color2)
<!> (prev-color $color4) ($color3)
<!> (prev-color $color5) ($color4)
<!> (prev-color $color6) ($color5)
<> ((state ?s (?t ?r) ?f) handle-event (Key (?x r))) (draw-ui (state ?s (?t prev-color ?r) ?f))
<> ((state ?s (?t ?r) ?f) handle-event (Key (?x t))) (draw-ui (state ?s (?t next-color ?r) ?f))
<> (draw-ui (state ?s (?t ?r) ?f)) (
  draw-brush-icon ?t
  draw-color-dot ?r 
  (state ?s (?t ?r) ?f))
<!> (draw-color-dot $color2) 
(draw fill-circ $icon-position-1 (number 6) $color2
 draw circ $icon-position-1 (number 5) $color1)
<!> (draw-color-dot (color ?c)) (draw fill-circ $icon-position-1 (number 6) (color ?c))
<> clear-brush-icon (draw fill-rect (number 10) $screen-size (number 54) `- (number 16) (number 16) $color2)
<> (draw-brush-icon line) (
  clear-brush-icon
  draw line (number 10) $screen-size (number 42) `- (number 22) $screen-size (number 54) `- $color1
)
<> (draw-brush-icon quadrangle) (
  clear-brush-icon
  draw rect (number 10) $screen-size (number 54) `- (number 12) (number 12) $color1
)
<> (draw-brush-icon triangle) (
  clear-brush-icon
  draw line (number 10) $screen-size (number 42) `- (number 16) $screen-size (number 54) `- $color1
  draw line (number 16) $screen-size (number 54) `- (number 22) $screen-size (number 42) `- $color1
  draw line (number 10) $screen-size (number 42) `- (number 22) $screen-size (number 42) `- $color1
)
<> (draw-brush-icon circle) (
  clear-brush-icon
  draw circ (number 16) $screen-size (number 48) `- (number 6) $color1
)
<> (draw-brush-icon fill-circle) (
  clear-brush-icon
  draw fill-circ (number 16) $screen-size (number 48) `- (number 6) $color1
)
<> $icon-position-1 ((number 16) $screen-size (number 16) `-)
?(?-) (c)
<> (handle-event ?x) ()
<> (state ((?a ?b) ((?c ?d) ?s)) (circle ?r) listening)
   
   (draw circ (number ?c) (number ?d) (number distance (?a ?b) (?c ?d)) ?r
    state ?s (circle ?r) listening)
<> (state ((?a ?b) ((?c ?d) ?s)) (fill-circle ?r) listening)
   
   (draw fill-circ (number ?c) (number ?d) (number distance (?a ?b) (?c ?d)) ?r 
    state ?s (fill-circle ?r) listening)
<> (state ((?a ?b) ((?c ?d) ?s)) (line ?r) listening)
   (draw line (number ?a) (number ?b) (number ?c) (number ?d) ?r
    state ?s (line ?r) listening)
<> (state ((?a ?b) ((?c ?d) ((?e ?f) ?s))) (triangle ?r) listening)
   (draw line (number ?a) (number ?b) (number ?c) (number ?d) ?r
    draw line (number ?c) (number ?d) (number ?e) (number ?f) ?r
    draw line (number ?e) (number ?f) (number ?a) (number ?b) ?r
    state ?s (triangle ?r) listening)
<> (state ((?a ?b) ((?c ?d) ((?e ?f) ((?g ?h) ?s)))) (quadrangle ?r) listening)
   (draw line (number ?a) (number ?b) (number ?c) (number ?d) ?r
    draw line (number ?c) (number ?d) (number ?e) (number ?f) ?r
    draw line (number ?e) (number ?f) (number ?g) (number ?h) ?r
    draw line (number ?g) (number ?h) (number ?a) (number ?b) ?r
    state ?s (quadrangle ?r) listening)
?(?-) (Action handlers)
<> (draw ?: (number ?0) (number ?1) (number ?2) (number ?3) (color ?4)) ?:
<> (draw ?: (number ?0) (number ?1) (number ?2) (color ?3)) ?:
<> (draw ?: (number ?0) (number ?1) (color ?2)) ?:
<> ((?0) (?1) `?:) ?:
<> ((number ?0) (number ?1) `?:) ((number ?:))
<> (dec (number ?x)) ((number ?x) (number 1) `-)
<> (inc (number ?x)) ((number ?x) (number 1) `+)
<> (cmd ?:) ?:
draw fill-rect (number 0) (number 0) $screen-size $screen-size $color2
draw-ui
(state () (circle $color1) listening) read-event Any