pub fn parse(source: &str) -> Result<Program, SolilangError>
Parse source code into an AST without executing.