view modules/compiler.tp @ 281:f6dfb85e80e5

Forgot to return this in previous self fix
author Michael Pavone <pavone@retrodev.com>
date Mon, 21 Jul 2014 19:41:15 -0700
parents 004946743678
children
line wrap: on
line source

#{
	main <- :args {
		if: (args length) > 1 {
			file <- os open: (args get: 1) (os O_RDONLY)

			code <- ""
			chunksize <- 1024
			readsize <- chunksize
			while: { readsize = chunksize} do: {
				seg <- os read: file chunksize
				code <- code . seg
				readsize <- seg byte_length
			}
			res <- parser top: code
			if: res {
				methods <- symbols buildMethodTable: (res yield)
				print: methods
			} else: {
				print: "Parse failed!\n"
			}
		} else: {
			print: "Usage compiler FILE\n"
		}
	}
}