REPL import warning; version info in CLI
Adds the ability to toggle result decoding in REPL. Adds several more useful functions to the base library.
This commit is contained in:
		| @ -37,21 +37,21 @@ processLevel = y (\self queue : if (emptyList? queue) | ||||
|   []  | ||||
|   (pair (map label queue) (self (filter  | ||||
|     (\node : not? (emptyList? node))  | ||||
|       (lconcat (map left queue) (map right queue)))))) | ||||
|       (append (map left queue) (map right queue)))))) | ||||
|  | ||||
| levelOrderTraversal_ = \a : processLevel (t a t) | ||||
|  | ||||
| toLineString = y (\self levels : if (emptyList? levels)  | ||||
|   ""  | ||||
|   (lconcat  | ||||
|     (lconcat (map (\x : lconcat x " ") (head levels)) "")  | ||||
|     (if (emptyList? (tail levels)) "" (lconcat (t (t 10 t) t) (self (tail levels)))))) | ||||
|   (append  | ||||
|     (append (map (\x : append x " ") (head levels)) "")  | ||||
|     (if (emptyList? (tail levels)) "" (append (t (t 10 t) t) (self (tail levels)))))) | ||||
|  | ||||
| levelOrderToString = \s : toLineString (levelOrderTraversal_ s) | ||||
|  | ||||
| flatten = foldl (\acc x : lconcat acc x) "" | ||||
| flatten = foldl (\acc x : append acc x) "" | ||||
|  | ||||
| levelOrderTraversal = \s : lconcat (t 10 t) (flatten (levelOrderToString s)) | ||||
| levelOrderTraversal = \s : append (t 10 t) (flatten (levelOrderToString s)) | ||||
|  | ||||
| exampleOne = levelOrderTraversal [("1")  | ||||
|                                  [("2") [("4") t t] t]  | ||||
|  | ||||
| @ -2,17 +2,6 @@ | ||||
|  | ||||
| main = size size | ||||
|  | ||||
| compose = \f g x : f (g x) | ||||
|  | ||||
| succ = y (\self : | ||||
|   triage | ||||
|     1 | ||||
|     t | ||||
|     (triage | ||||
|       (t (t t)) | ||||
|       (\_ tail : t t (self tail)) | ||||
|       t)) | ||||
|  | ||||
| size = (\x : | ||||
|   (y (\self x : | ||||
|     compose succ | ||||
|  | ||||
		Reference in New Issue
	
	Block a user