summaryrefslogtreecommitdiffstats
path: root/contrib/bc/README
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/bc/README')
-rw-r--r--contrib/bc/README57
1 files changed, 57 insertions, 0 deletions
diff --git a/contrib/bc/README b/contrib/bc/README
new file mode 100644
index 0000000..7bc2315
--- /dev/null
+++ b/contrib/bc/README
@@ -0,0 +1,57 @@
+-------- Original comp.sources.reviewed README --------
+
+Program: GNU bc
+Author: Philip A. Nelson
+E-mail: phil@cs.wwu.edu
+OS: UNIX (BSD, System V, MINIX, POSIX)
+Copying: GNU GPL version 2
+Copyright holder: Free Software Foundation, Inc.
+Version: bc version 1.01
+Required: vsprintf and vfprintf routines.
+Machines: It has been compiled and run on the following environments:
+ BSD4.3 (VAX 11)
+ MINIX 1.5 (IBM PC, both K&R and ANSI compilers)
+ MINIX 1.5 (pc532)
+ SUN-OS 4.1 (SUN 3 and SUN 4)
+ SVR3V5 (Motorola 68K)
+ SVR3.2 (3B2)
+ SVR4.0.2 (a 386 box)
+ ULTRIX 4.1 (DEC 5000)
+ UTS (Amdahl)
+
+bc is an arbitrary precision numeric processing language. Syntax is
+similar to C, but differs in many substantial areas. It supports
+interactive execution of statements. bc is a utility included in the
+POSIX P1003.2/D11 draft standard.
+
+This version was written to be a POSIX compliant bc processor with
+several extensions to the draft standard. Option flags are available
+to cause warning or rejection of the extensions to the POSIX standard.
+For those who want only POSIX bc with no extensions, a grammar is
+provided for exactly the language described in the POSIX document.
+The grammar (sbc.y) comes from the POSIX document. The Makefile
+contains rules to make sbc. (for Standard BC)
+
+Since the POSIX document does not specify how bc must be implemented,
+this version does not use the historical method of having bc be a
+compiler for the dc calculator. This version has a single executable
+that both compiles the language and runs the a resulting "byte code".
+The "byte code" is NOT the dc language.
+
+Also, included in the initial distribution is the library file
+vfprintf.c for MINIX systems. My minix 1.5 did not have this file.
+Also, you should verify that vsprintf.c works correctly on your
+system.
+
+The extensions add some features I think are missing. The major
+changes and additions for bc are (a) names are allowed to be full
+identifiers ([a-z][a-z0-9_]*), (b) addition of the &&, ||, and !
+operators, (c) allowing comparison and boolean operations in any
+expression, (d) addition of an else clause to the if statement, (e)
+addition of a new standard function "read()" that reads a number from
+the standard input under program control, (f) passing of arrays as
+parameters by variable, (g) addition of the "halt" statement that is
+an executable statement unlike the quit (i.e. "if (1 == 0) quit" will
+halt bc but "if (1 == 0) halt" will not halt bc.), and (h) the
+addition of the special variable "last" that is assigned the value of
+each print as the number is printed.
OpenPOWER on IntegriCloud