top-level function defs like Haskell