• Home
  • History
  • Annotate
  • only in this directory
NameDateSize

..04-Dec-20067

acconfig.hH A D07-Jul-2000459

aclocal.m4H A D03-Oct-20004.5 KiB

AUTHORSH A D13-Sep-2000120

bc/H04-Dec-200623

ChangeLogH A D27-Sep-200034.3 KiB

config.h.inH A D03-Oct-20001.9 KiB

configureH A D03-Oct-200079.1 KiB

configure.inH A D07-Jul-20002.3 KiB

COPYINGH A D16-Sep-199917.6 KiB

COPYING.LIBH A D07-Jul-200025.9 KiB

dc/H04-Dec-200614

doc/H04-Dec-200611

Examples/H04-Dec-20066

FAQH A D07-Jul-2000829

h/H04-Dec-20064

INSTALLH A D07-Jul-20007.3 KiB

install-shH A D07-Jul-20004.7 KiB

lib/H04-Dec-20069

Makefile.amH A D07-Jul-2000594

Makefile.inH A D13-Jul-200611.2 KiB

missingH A D07-Jul-20004.5 KiB

mkinstalldirsH A D07-Jul-2000730

NEWSH A D12-Sep-20001.9 KiB

READMEH A D31-Aug-20003.4 KiB

stamp-h.inH A D03-Oct-200010

Test/H04-Dec-200622

README

1GNU bc version 1.06:
2
3Extra configuration options:
4
5	--with-readline tells bc to use the readline package that allows
6	  for editing input lines when run interactive.
7
8	--with-editline tells bc to use the BSD editline package that
9	  allows for editing input lines when run interactive.
10
11Extra make steps:
12
13	The simple make compiles a version of bc with fixed parameters
14	for the recursive multiplication algorithm.  The fixed parameter
15	is the number of digits where a sequential algorithm is used
16	instead of the recursive algorithm.  It is set to a value that
17	is known good on a couple of machines. (Sparc Ultra 10, Pentium
18	II, 450.)  I'm calling this point the crossover point.
19
20	To make a version of bc with a custom crossover point for your
21	machine, do the following steps:
22
23		make timetest
24		make
25
26	The timetest step takes a minimum of 10 minutes to complete.
27
28
29-------- Original comp.sources.reviewed README --------
30
31Program: GNU bc
32Author: Philip A. Nelson
33E-mail: phil@cs.wwu.edu
34OS: UNIX (BSD, System V, MINIX, POSIX)
35Copying: GNU GPL version 2
36Copyright holder: Free Software Foundation, Inc. 
37Version: bc version 1.01
38Required: vsprintf and vfprintf routines.
39Machines: It has been compiled and run on the following environments:
40	BSD4.3 (VAX 11)
41	MINIX 1.5 (IBM PC, both K&R and ANSI compilers)
42	MINIX 1.5 (pc532)
43	SUN-OS 4.1 (SUN 3 and SUN 4)
44	SVR3V5 (Motorola 68K)
45	SVR3.2 (3B2)
46	SVR4.0.2 (a 386 box)
47	ULTRIX 4.1 (DEC 5000)
48	UTS (Amdahl)
49
50bc is an arbitrary precision numeric processing language.  Syntax is
51similar to C, but differs in many substantial areas.  It supports
52interactive execution of statements.  bc is a utility included in the
53POSIX P1003.2/D11 draft standard.
54
55This version was written to be a POSIX compliant bc processor with
56several extensions to the draft standard.  Option flags are available
57to cause warning or rejection of the extensions to the POSIX standard.
58For those who want only POSIX bc with no extensions, a grammar is
59provided for exactly the language described in the POSIX document.
60The grammar (sbc.y) comes from the POSIX document.  The Makefile
61contains rules to make sbc.  (for Standard BC)
62
63Since the POSIX document does not specify how bc must be implemented,
64this version does not use the historical method of having bc be a
65compiler for the dc calculator.  This version has a single executable
66that both compiles the language and runs the a resulting "byte code".
67The "byte code" is NOT the dc language.
68
69Also, included in the initial distribution is the library file
70vfprintf.c for MINIX systems.  My minix 1.5 did not have this file.
71Also, you should verify that vsprintf.c works correctly on your
72system.
73
74The extensions add some features I think are missing.  The major
75changes and additions for bc are (a) names are allowed to be full
76identifiers ([a-z][a-z0-9_]*), (b) addition of the &&, ||, and !
77operators, (c) allowing comparison and boolean operations in any
78expression, (d) addition of an else clause to the if statement, (e)
79addition of a new standard function "read()" that reads a number from
80the standard input under program control, (f) passing of arrays as
81parameters by variable, (g) addition of the "halt" statement that is
82an executable statement unlike the quit (i.e.  "if (1 == 0) quit" will
83halt bc but "if (1 == 0) halt" will not halt bc.), and (h) the
84addition of the special variable "last" that is assigned the value of
85each print as the number is printed.
86-----------------------------------------------------------------------
87