codegen' :: AST.Definition -> ModuleGen ()
codegen' (AST.Definition name tyExpr value) = do
  let ty = cgType tyExpr
  runFunctionGen (T.unpack name) ty (tyArgs ty) False functionDefaults (runCodeGen . funcgen value)
  pure ()
codegen' :: AST.Definition -> ModuleGen ()
codegen' (AST.Definition name tyExpr value) = do
  let ty = cgType tyExpr
  runFunctionGen (T.unpack name) ty (tyArgs ty) False functionDefaults (runCodeGen . funcgen value)
  pure ()
codegen' (AST.Definition name tyExpr value) = do
  let ty = cgType tyExpr
  runFunctionGen (T.unpack name) ty (tyArgs ty) False functionDefaults (runCodeGen . funcgen value)
  pure ()