Curried Higher Order Function Debugging
Jump to navigation
Jump to search
Contents
Code To Debug
A
file: | src/main/sml/group_curry_hof_debug/a_fix_me_hof_hof.sml |
fun add(a,b) =
a + b
val sum = foldl(add, 0, [1,2,3,4])
B
file: | src/main/sml/group_curry_hof_debug/b_fix_me_hof_hof.sml |
val sum = foldl(op+, 0, [1,2,3,4])
C
file: | src/main/sml/group_curry_hof_debug/c_fix_me_hof_hof.sml |
fun range(min, maxExclusive) =
if min>=maxExclusive
then []
else min::range(min+1, maxExclusive)
val xs = range(1, 5)
val sum_a = foldl op+ 0 xs
val sum_b = foldl op+ 0 range(1, 5)
D
file: | src/main/sml/group_curry_hof_debug/d_fix_me_hof_hof.sml |
fun to_x(x, _) =
x
val xys = [(10,20), (30,40), (50, 60)]
val xs = map xys to_x
val sum_xs = foldl op+ 0 xs
E
file: | src/main/sml/group_curry_hof_debug/e_fix_me_hof_hof.sml |
val xys = [(10,20), (30,40), (50, 60)]
val xs = map xys #1
val sum_xs = foldl op+ 0 xs
F
file: | src/main/sml/group_curry_hof_debug/f_fix_me_hof_hof.sml |
val map_function = map
val filter_function_requires_list_module = filter (* requires List.filter *)
val fold_left_function = foldl
val fold_right_function = foldr
val find_function_requires_list_module = find (* requires List.find *)
val list_map_function_also_works = List.map
val list_foldl_function_also_works = List.foldl
val list_foldr_function_also_works = List.foldr
Code To Implement
file: | src/main/sml/group_curry_hof_debug/starts_with_h.sml | |
functions: | starts_with_h |