semantics working, parser in progress