
* Added standard List library and list comprehensions Added List library. Flatmaps WIP Fixed dependency in flat_map fcode generation Updated tests to use custom list lib Added comprehension test Added stdlib sanity Test * Extended stdlib for lists. Added error message for redefinition of stdlibx * Fixed type template * Improved stdlib * More functions * Fixed cyclic includes * Refixed imports and added few tests * Added fail test * Undelete removed type spec * Remove typo * Fix iter function * Fixed typo * Added if guards and let statements in list comp * Added more fail tests * Option stliv * 2 and 3 tuple stdlib * Updated stdlib to new syntax. Added recursor and changed all/any functions * Fixed performance issues. Changed include management * Fixed hash type
22 lines
438 B
Plaintext
22 lines
438 B
Plaintext
|
|
namespace MyList =
|
|
|
|
function map1(f : 'a => 'b, xs : list('a)) =
|
|
switch(xs)
|
|
[] => []
|
|
x :: xs => f(x) :: map1(f, xs)
|
|
|
|
function map2(f : 'a => 'b, xs : list('a)) =
|
|
switch(xs)
|
|
[] => []
|
|
x :: xs => f(x) :: map2(f, xs)
|
|
|
|
contract Deadcode =
|
|
|
|
entrypoint inc1(xs : list(int)) : list(int) =
|
|
MyList.map1((x) => x + 1, xs)
|
|
|
|
entrypoint inc2(xs : list(int)) : list(int) =
|
|
MyList.map2((x) => x + 1, xs)
|
|
|