0 people like it.

Simple Exp

1: 
2: 
3: 
4: 
5: 
6: 
7: 
type exp = Num of int
         | Add of exp * exp

let rec eval e =
    match e with
    | Num e' -> e'
    | Add (e1,e2) -> eval e1 + eval e2
val exp : value:'T -> 'T (requires member Exp)

Full name: Microsoft.FSharp.Core.Operators.exp
union case exp.Num: int -> exp
Multiple items
val int : value:'T -> int (requires member op_Explicit)

Full name: Microsoft.FSharp.Core.Operators.int

--------------------
type int = int32

Full name: Microsoft.FSharp.Core.int

--------------------
type int<'Measure> = int

Full name: Microsoft.FSharp.Core.int<_>
union case exp.Add: exp * exp -> exp
Multiple items
val exp : value:'T -> 'T (requires member Exp)

Full name: Microsoft.FSharp.Core.Operators.exp

--------------------
type exp =
  | Num of int
  | Add of exp * exp

Full name: Script.exp
val eval : e:exp -> int

Full name: Script.eval
val e : exp
val e' : int
val e1 : exp
val e2 : exp
Raw view Test code New version

More information

Link:http://fssnip.net/5r
Posted:15 years ago
Author:
Tags: