Applicative High Order Programming: The Standard ML Perspective |
From inside the book
Results 1-3 of 18
Page 91
... equality on real , it carries over to multree . As has already been stated , equality is not defined on function types : fun id ( x : int ) = x ; > val id = fn : int - > int - id = id ; Type clash in : ( id = id ) There is no equality ...
... equality on real , it carries over to multree . As has already been stated , equality is not defined on function types : fun id ( x : int ) = x ; > val id = fn : int - > int - id = id ; Type clash in : ( id = id ) There is no equality ...
Page 116
... equality , since the coordinate - wise equality provided by the system is unsatisfactory : let open Rat in let val half = rev ( rat ( 2 ) ) and half ' = mul ( rat ( 2 ) , rev ( rat ( 4 ) ) ) in half - half ' end end ; > false : bool ...
... equality , since the coordinate - wise equality provided by the system is unsatisfactory : let open Rat in let val half = rev ( rat ( 2 ) ) and half ' = mul ( rat ( 2 ) , rev ( rat ( 4 ) ) ) in half - half ' end end ; > false : bool ...
Page 118
... equality , this time because the system cannot supply any equality : the definition of type ( ' a ) stack involves type int - > ' a and there is no equality on function types . It is the program- mer's arbitrary decision to limit his ...
... equality , this time because the system cannot supply any equality : the definition of type ( ' a ) stack involves type int - > ' a and there is no equality on function types . It is the program- mer's arbitrary decision to limit his ...
Contents
Applicative vs imperative programming 33 | 3 |
The art of applicative programming | 13 |
Proving properties of recursive functions | 29 |
Copyright | |
10 other sections not shown
Common terms and phrases
a)list abstract machine andalso applicative programming argument auxiliary function bool Cartesian product chlist command compl constructors cont corresponding datatype denote dict dictionary eager evaluation empty end end engdeu environment equality evaluation exception Exercise fn key fn(x following function functional programs functor given High order functions imperative languages imperative program implementation induction instance instantiated integer iter itlist label lazy evaluation Lemma let fun let val lex_error matr mktree ML's Mono monoid monomorphic monomorphic type natural numbers no_entry node objects operations parity parser Pascal pointers polymorphic type primitive recursive programming languages real numbers realtree result sequence signature stack Standard ML definition string string*symbols struct type set structure subprogram subst succ Theorem tree tree2 typcon type checker type expressions type variables unification unifier update VneNat yields