> cd $(VENUS)
> INSTALL
where $(VENUS) is set as discussed in Section 2. For complete instructions on compiling a Venus program, please refer to Section 2.
0. Environment setup
> cd $(VENUS)/lib; make
> $(VENUS)/bin/venus foo.v
The Venus compiler supports the -fs <size> flag, which specifies
the maximum size of a generated file. For example, the command
> $(VENUS)/bin/venus -fs 100 foo.v
generates files with a maximum size of 100k.
> CC -c -I$(VENUS)/include foo.C
> CC -o foo -I$(VENUS)/include foo.o $(VENUS)/lib/libvenus.a
An adjunct to program linking is debugger information file linking.
The Venus compiler generates partial rdb debugging information.
This information must be completed by calling the program rlink.
Rlink is called with the program name as the first option and all
of the module names as the remaining options.
For example, the following would be the rlink call for the above
example.
> rlink -o foo foo
NOTE: Much of the above can be automated in a Makefile. Examine
any of the Makefiles in the programs
directories for examples.
bin
venus
Venus compiler executable.
rlink
Executable to create global debugging file.
rdb
Venus rule debugger.
lib
Makefile Makefile
to create the Venus runtime library.
libvenus.a Archived Venus library.
programs
venus
Directory of program repository containing.
sample programs.
doc
README
The current file you are viewing.
FAQ
Text file of frequently asked questions.
ami.ps
Abstract Machine Interface definition
cikm96.ps Lane Warshaw,
Dan Miranker, "A Case Study of Venus and a
Declarative Basis for Rule Modules." Conference on
Information and Knowledge Management, Nov. 12 -16, 1996.
cursor.ps Venus cursor
interface.
debug.ps Rule debugger
reference manual.
event.ps Event
Driven Processing in Venus
quick-guide.ps Venus startup guide for immediate use.
refman.ps Venus reference
manual.
Venus-1.0/programs/venus/rule-opt
For installation directions, please refer to the README located
in the rule-opt directory.
5. NOTES
1). Venus 1.0 has an API that enables Venus programs to inference
over data of user defined and non-local containers, the Abstract
Machine Interface (AMI). Two programs in the test suite
are designed to run using the Rogue-Wave container interface which
require
the Rogue Wave Tools.h++ library. These programs are:
2). Venus 1.0 only allows for binary expressions in Venus source
files.
For ex.
4). The Venus rule-optimizer uses the Standard Template Library
and has only been
tested under the Gnu 2.7.2 and the MSVC 5.0 C++ compilers.
Please refer to the
README file located in the programs/venus/rule-opt directory for
directions in compiling
the rule-optimizer.
5). The Venus module call graph is limited to a DAG (Directed Acyclic
Graph).
6). The Venus rule-debugger currently works slightly differently
on the Window95/NT
operating systems. For more information, please refer to
the Venus reference manual,
chapter on debugging.
venus-bug@arlut.utexas.edu
In order for a bug report to serve its purpose, you must include
the
information that makes for fixing the bug. Please follow
the GNU C++
standards for reporting bugs.
To contact us or ask questions please send mail to:
venus-quest@arlut.utexas.edu