|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
-
- nife - Networking Industrial Forth-like Environment.
-
- Overview
-
- Nife is a programming language based on the principles set of Forth
- defined by Charles H. Moore in the 1960s. It does not include the
- full functionality of Forth, that is the reason why it is considered
- as a "Forth-like" language.
-
- His ambition is to offer people who are not computer scientists, and
- need to make measurements, control of remote devices to monitor industrial
- processes, handling of large collections of data, make calculations, of
- filtering, statistics, can easily make their needs in a Linux environment
- at low cost.
-
- The simplicity of this language that anyone can understand how it works
- in a few minutes and totally control a few hours to a week at most.
- It can also be used more modestly as a super calculator, just to make its
- accounts or calculations of matrix inversion. The public concerned is
- very large.
-
- It keeps the forth the following characteristics:
- - Mode operation interpretation: as a shell.
- - Loading source files and compilation and execution.
- - Using stacks (digital, logical and characters) requiring the use of
- notation called "reverse-Polish."
- - How to write new features.
-
- It adds the following possibilities:
- - A true "context-free" language to compile code on the fly.
- - Installation compatible on all Unix-like systems including Linux.
- - Ease of interfacing to additional commands in a program Nife use many
- free tools available in a Linux environment (eg xgraph).
- - Integration of a consistent mathematical library to easily perform
- calculations on a large number of data.
- - Ability to easily add other functions to the base library.
- - Automatic recognition of cards or devices compatible with the library
- COMEDI (http://www.comedi.org) to make data acquisition, signal
- processing, automatic pilot. This is one of its sides "industrial".
- - Variable definition of variable geometry (which may in turn contain
- a scalar, an array of numeric values, a boolean, a string ...) and
- can also become executable variables (ie referring to the code that
- will be called when using the variable). This aspect gives the term
- Nife dynamic language with all that this implies (code compact and
- fast, scalable performance).
- - Management of multi-tasking with the command task that can initiate
- parallel execution of functions, control (whether it is complete,
- refer to the consoles, delete, etc.).
- - Nife programs can communicate with each other via the communication
- tools offered by traditional Unix, internally (within the same system)
- or external interface based on TCP/IP. For this, it has its own
- protocol STSP (stack to stack protocol) for exchanging data directly
- from a numerical stack to an other one. This is one of its aspects
- "Networking".
- - The possible opening towards the use of other devices through the
- integration of specific drivers.
-
-
- How to compile and install nife
-
- Download the nife source code, then:
- tar zxvf nife-x.y.z.tar.gz
- cd nife-x.y.z
- ./configure
- make
-
- WARNING !!
- make install is not preconized in beta version !!
-
- You can use it by positionning in the source directory and call the
- command :
- cd src
- ./nife
-
- You can also lauch the benchmark test :
- ./test.sh
-
-
- Web Page
-
- https://www.seriane.org/nife/
-
-
- Bug Reports
-
- For general bug reports, send a description of the problem to
- nife@seriane.fr.
-
-
- Current Status
-
- nife is still in beta version.
-
- Patrick Foubet (nife@seriane.fr)
-
-
|