# calc++ - A Flex+Bison calculator This directory contains calc++, a Bison grammar file in C++. If you never saw the traditional implementation in C, please first read examples/c/lexcalc, which can be seen as a C precursor of this example. Read the corresponding chapter in the documentation: "A Complete C++ Example". It is also available [on line](https://www.gnu.org/software/bison/manual/html_node/A-Complete-C_002b_002b-Example.html) (maybe with a different version of Bison). To use it, copy this directory into some work directory, and run `make` to compile the executable, and try it. It is a simple calculator which accepts several variable definitions, one per line, and then a single expression to evaluate. The program calc++ expects the file to parse as argument; pass `-` to read the standard input (and then hit <Ctrl-d>, control-d, to end your input). ``` $ ./calc++ - one := 1 two := 2 three := 3 (one + two * three) * two * three <Ctrl-d> 42 ``` You may pass `-p` to activate the parser debug traces, and `-s` to activate the scanner's. <!--- Local Variables: fill-column: 76 ispell-dictionary: "american" End: Copyright (C) 2018-2021 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the "GNU Free Documentation License" file as part of this distribution. LocalWords: calc parsers yy MERCHANTABILITY Ctrl ispell american --->
Generated by dwww version 1.15 on Thu May 23 23:49:24 CEST 2024.