File: weird-word1.sml

package info (click to toggle)
mlton 20100608-5
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 36,624 kB
  • sloc: ansic: 18,441; lisp: 2,879; makefile: 1,572; sh: 1,326; pascal: 256; asm: 97
file content (26 lines) | stat: -rw-r--r-- 529 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
fun fib (w: Word5.word) : Word5.word =
   if w <= 0wx1
      then 0wx1
   else fib (w - 0wx1) + fib (w - 0wx2)

val s =
   case (fib 0wx5) of
      0wx0 => "0wx0"
    | 0wx1 => "0wx1"
    | 0wx2 => "0wx2"
    | 0wx3 => "0wx3"
    | 0wx4 => "0wx4"
    | 0wx5 => "0wx5"
    | 0wx6 => "0wx6"
    | 0wx7 => "0wx7"
    | 0wx8 => "0wx8"
    | 0wx9 => "0wx9"
    | 0wxA => "0wxA"
    | 0wxB => "0wxB"
    | 0wxC => "0wxC"
    | 0wxD => "0wxD"
    | 0wxE => "0wxE"
    | 0wxF => "0wxF"
    | _ => "zzz"

val _ = print (concat [s, "\n"])