Look into DEF. Here's examples: DEF TEST NAME$ PRINT "HELLO, "+NAME$ END TEST "Jimmy" DEF SQUARED(NUM#) RETURN NUM#*NUM# END PRINT SQUARED(2) Something weird to mention: DEFs are completely untyped, they don't even type check their arguments! You can also make DEFs that don't take arguments, so they make gosub and goto completely obsolete.