A calculator supporting variables, conditionals, loops and functions written in Flex and Bison