FrAid 1.4 review

by on

An interface to the Java programming language - interfaces Java with a small programming language (same name, FrAid) so mathemat

License: GPL (GNU General Public License)
File size: 0K
Developer: Ivaylo Iliev
0 stars award from

An interface to the Java programming language

- interfaces Java with a small programming language (same name, FrAid) so mathematical equations, formulas, etc. could be used within your Java code. This could be applied to large number of problems where symbolyc mathematical data needs to be processed - numerical computations, symbolic computations, graphic visualization, imaging, CAD, ... From this prospective the FrAid stand alone system could be viewed as an example of what could be done using FrAid as an interface to Java. The rest is up to your needs and imagination...

A standalone application

- it is a completely selfsufficient system which provides flexible and extensible programming environment utilizing the FrAid programming language. You can use the existing scripts, functions and environments for mathematical computations, vizualization, batch processing and more. It is not meant to be a general scripting tool but in certain contexts it can be used as one.

The FrAid programing language

- could be used independently (main programming language, like the in FrAid the standalone system) or as an interface to a larger system (even outside the Java context);

a parser/interpreter for the FrAid programming language;
a dynamic symbol table used by the interpreter - could be loaded/unloaded/changed in run time;
a GraphicsPanel for visualizing graphics - 2D, double precision "infinite" zooming and scrolling, saves to JPEG and PNG in any resolution/size;
a SettingsEditor for editing serialized Java classes (XML or regular) - maintains all FrAid settings, could be used for (almost) anything Java serialized;
a simple MIDI panel for converting numeric sequences to MIDI + play/record capability;
highly flexible IO subsystem, providing run time redirection and various logging options.

Operating system - any operating system running Java will do.
Java Runtime Environment (JRE) - FrAid was biult and tested with JRE v. 1.4.1 (I assume any later version should do). You can get Java from Sun, it's free.


Note that you need to install only if you want to use custom plugins for the graphics, custom symbol tables, etc. Otherwise fraid.jar is ready to be used just the way it is (java -cp fraid.jar org.fraid.interpreter.Fraid or use from your code).

These directions though assume you want to install (although as it was noted you don't need to). Run java -jar fraid.jar (on Windows systems you can just doubleclick);

1. Directory named custom_fraid will be created in your home directory. Note: this is quite different on the different systems - on the Unixes this is in /home/yur_dir, on Windows XP this is ...Document and Settingsyour_dir, on Windows 95/98 it goes under the C:Windows directory. A reminder dialog where the instalation went will pop up on the screen.
2. If everything goes OK the installation program will exit after it is finished (if not, it will stop showing you the last successful step that was executed (or attempted) or an error message).
3. The original file you started with will remain wherever it was. fraid.jar will copy itself in your_home_dir/custom_fraid/bin/fraid.jar, so after the installation you can delete the original fraid.jar you started with.

Note: To protect the files you may have created ( scripts, plugins, images, midi ) FrAid will not install on top of an existing installation. Either pick a new loacation or delete the old installation first.


during the instalation a file /home/your_dir/custom_fraid/ was created, make it executable - chmod 755 /home/your_dir/custom_fraid/
run -in system to use system's console or Fraid/ to use FraidConsole

What's New in This Release:
The system is now modular.
A major refactoring of the code was undertaken, and org.fraid.Scripting is now split into three interfaces. static_symbols is no longer used, and FrAid searches the installation dynamically for functions.
rk and rk1 now take an additional string parameter.
printClassPath() and printPlugins() functions were added along with a new fourier() plugin and function.

FrAid 1.4 keywords