([], _) = Left ["No start function defined"]
([Function _ [] e], fs) = Right (foldr (\(Function i a e)->Let i a e) e fs)
([Function _ _ _], _) = Left ["Start cannot have arguments"]
-where
- funs = [i\\(Function i _ _)<-fs]
//import qualified Data.Map as DM
//from Data.Map import instance Functor (Map k)