Dylan: An OO Dynamic Language

[top]

  1. Object oriented dynamic language.
  2. Example: Square-root using Newthon's method.

    // Calculate square-root of x
    define method newtons-sqrt (x)
       local method sqrt1 (guess)
               if (close? (guess))
                  guess
               else
                  sqrt1 (improve (guess))
               end if
             end sqrt1,
             method close? (guess)
               abs (guess * guess - x) < .0001
             end close?,
             method improve (guess)
               (guess + (x / guess)) / 2
             end improve;
       sqrt1 (1)
    end method newtons-sqrt
    

[top]