compilers
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 815
Aurora Compiler 1.0-RC1
Aurora is a powerful 32 bit compiler featuring an integrated development environment with advanced compiler, assembler and linker. Aurora features a ... more>> <<less
Download (7238KB)
Added: 2009-04-11 License: Freeware Price: Free
213 downloads
Hoc 9.1.2
Hoc is an interpreted language for floating-point calculations. more>>
Hoc (short from High Order Calculator) is an interpreted language for floating-point calculations. Its most basic use is as a powerful and convenient calculator, interactively evaluating expressions such as 1+2*sin(0.7). But hoc is no ordinary calculator: It also lets you assign values to variables, define your own functions, and use loops, conditionals, and everything else youd expect in a programming language.
The Hoc language was introduced and developed in the book The Unix Programming Environment, by Brian Kernighan and Rob Pike (Addison-Wesley, 1984). Countless people are indebted to this book, and its author, for introducing them to Unix and its fantastic programming tools like the shell, C, and Yacc. Some of these people were strongly impressed by Kernighan and Pikes feat of building an interpreter so easily (something which, before the advent of Yacc, was to be attempted only by experts).
One of these people was Nadav HarEl, the author of this package, who in 1986, as an 11 year old boy, typed in the source code of "Hoc 6" from the book, and started using it and once in a while added to it features that he wished for. This package is the result of almost a decade of such slow evolution of Hoc. It has numerous improvements over the books version, which are described below. The code was also modernized, to compile and run on a large variety of machines and compilers that appeared since 1984, and most importantly on ANSI C compilers (although the code should still work on a K&R C compiler, if you can find one in a museum).
Compiling and Installing:
First run configure, to generate the Makefile.
Then, compile and install hoc:
make
make install
<<lessThe Hoc language was introduced and developed in the book The Unix Programming Environment, by Brian Kernighan and Rob Pike (Addison-Wesley, 1984). Countless people are indebted to this book, and its author, for introducing them to Unix and its fantastic programming tools like the shell, C, and Yacc. Some of these people were strongly impressed by Kernighan and Pikes feat of building an interpreter so easily (something which, before the advent of Yacc, was to be attempted only by experts).
One of these people was Nadav HarEl, the author of this package, who in 1986, as an 11 year old boy, typed in the source code of "Hoc 6" from the book, and started using it and once in a while added to it features that he wished for. This package is the result of almost a decade of such slow evolution of Hoc. It has numerous improvements over the books version, which are described below. The code was also modernized, to compile and run on a large variety of machines and compilers that appeared since 1984, and most importantly on ANSI C compilers (although the code should still work on a K&R C compiler, if you can find one in a museum).
Compiling and Installing:
First run configure, to generate the Makefile.
Then, compile and install hoc:
make
make install
Download (0.060MB)
Added: 2007-08-20 License: BSD License Price:
796 downloads
Sudo 1.6.9p4
Sudo allows a system administrator to give certain users (or groups of users) the ability to run some commands as root. more>>
Sudo (su "do") allows a system administrator to give certain users (or groups of users) the ability to run some (or all) commands as root or another user while logging the commands and arguments.
The Sudo project is free software and is distributed under an ISC-style license.
Enhancements:
- This release adds support for IPv6.
- It has a fix for the installation path of the sudo_noexec shared object and a change to support compilation on old-style K&R compilers.
<<lessThe Sudo project is free software and is distributed under an ISC-style license.
Enhancements:
- This release adds support for IPv6.
- It has a fix for the installation path of the sudo_noexec shared object and a change to support compilation on old-style K&R compilers.
Download (0.54MB)
Added: 2007-08-18 License: BSD License Price:
805 downloads
XML::Filter::Dispatcher::Compiler 0.52
XML::Filter::Dispatcher::Compiler can compile rulesets in to code. more>>
XML::Filter::Dispatcher::Compiler can compile rulesets in to code.
SYNOPSIS
use XML::Filter::Dispatcher::Compiler qw( xinline );
my $c = XML::Filter::Dispatcher::Compiler->new( ... )
my $code = $c->compile(
Package => "My::Filter",
Rules => [
a/b/c => xinline q{warn "found a/b/c"},
],
Output => "lib/My/Filter.pm", ## optional
);
Most of the options from XML::Filter::Dispatcher are accepted.
NOTE: you cannot pass code references to compile() if you want to write the $code to disk, they will not survive. If you want to eval $code, this is ok.
METHODS
xinline
Hints to X::F::D that the string is inlinable code. This is a requirement when using the compiler and is so far (v.52) ignored elswhere. In xinlined code, $self refers to the current dispatcher and $e refers to the current events data. Or you can get that yourself in $_[0] and $_[1] as in a normal SAX event handling method.
compile
Accepts options that extend and override any previously set for the duration of the compile(), including the ruleset to compile.
<<lessSYNOPSIS
use XML::Filter::Dispatcher::Compiler qw( xinline );
my $c = XML::Filter::Dispatcher::Compiler->new( ... )
my $code = $c->compile(
Package => "My::Filter",
Rules => [
a/b/c => xinline q{warn "found a/b/c"},
],
Output => "lib/My/Filter.pm", ## optional
);
Most of the options from XML::Filter::Dispatcher are accepted.
NOTE: you cannot pass code references to compile() if you want to write the $code to disk, they will not survive. If you want to eval $code, this is ok.
METHODS
xinline
Hints to X::F::D that the string is inlinable code. This is a requirement when using the compiler and is so far (v.52) ignored elswhere. In xinlined code, $self refers to the current dispatcher and $e refers to the current events data. Or you can get that yourself in $_[0] and $_[1] as in a normal SAX event handling method.
compile
Accepts options that extend and override any previously set for the duration of the compile(), including the ruleset to compile.
Download (0.086MB)
Added: 2007-08-17 License: Perl Artistic License Price:
798 downloads
FreeBASIC Compiler 0.16 / 0.18.1b
FreeBASIC Compiler is an open-source, free, 32-bit, MS-QuickBASICs syntax-compatible compiler. more>>
FreeBASIC - as the name suggests - is a free, open-source, 32-bit, MS-QuickBASICs syntax-compatible compiler, that adds new features such as pointers, unsigned data types, inline-assembly and many others.
Main features:
- syntax compatible with Microsofts QBASIC/QuickBASIC/PDS/VBDOS interpreters/compilers
- clean syntax
- great number of variables types, like BYTE/SHORT/INTEGER, SINGLE/DOUBLE and STRING
- user defined types (UDTs)
- enums (Enumerations)
- arrays
- pointers
- optional function arguments (numeric only)
- inline assembly
- pre-processor
- creates OBJs, LIBs, DLLs/Shared Libs, console and GUI EXEs
- as a 32-bit application
- optimized code generation
- completely *FREE*
- portability
<<lessMain features:
- syntax compatible with Microsofts QBASIC/QuickBASIC/PDS/VBDOS interpreters/compilers
- clean syntax
- great number of variables types, like BYTE/SHORT/INTEGER, SINGLE/DOUBLE and STRING
- user defined types (UDTs)
- enums (Enumerations)
- arrays
- pointers
- optional function arguments (numeric only)
- inline assembly
- pre-processor
- creates OBJs, LIBs, DLLs/Shared Libs, console and GUI EXEs
- as a 32-bit application
- optimized code generation
- completely *FREE*
- portability
Download (3.1MB)
Added: 2007-08-16 License: GPL (GNU General Public License) Price:
803 downloads
Libsigc++ 2.1.1
Libsigc++ is a callback framework for C++. more>>
libsigc++ implements a full callback system for use in abstract interfaces and general programming. libsigc++ is the most complete library of its kind with the ability to connect an abstract callback to a class method, function, or function object.
It contains adaptor classes for connecting dissimilar callbacks and has an ease of use unmatched by other C++ callback libraries.
Main features:
- Compile time typesafe callbacks (faster than run time checks)
- Typesafety violations report line number correctly with template names (no tracing template failures into headers)
- No compiler extensions or meta compilers required
- Proper handling of dynamic objects and signals (deleted objects will not cause seg faults)
- Extendable API at any level: signal, slot, connection and trackable
- Extensions do not require alteration of basic components
- User definable accumulators
- A variety of adaptors to change the callback signature: bind, hide, retype, compose and lambda call groups
- Various compilers and platforms are supported: gcc, cygwin, mingw32, MS .NET 2003, Sun Forte C++, Compaq C++, Intel C++
libsigc++ is known to build and work with the following compilers:
- g++ (>= 3.2, including Apple and Cygwin versions)
- Microsoft Visual C++ .NET 2003
- Intel C++ compiler
- SUN Forte C++ CC
- IBM AIX xlC
- Tru64 C++
- IRIX MIPSpro
<<lessIt contains adaptor classes for connecting dissimilar callbacks and has an ease of use unmatched by other C++ callback libraries.
Main features:
- Compile time typesafe callbacks (faster than run time checks)
- Typesafety violations report line number correctly with template names (no tracing template failures into headers)
- No compiler extensions or meta compilers required
- Proper handling of dynamic objects and signals (deleted objects will not cause seg faults)
- Extendable API at any level: signal, slot, connection and trackable
- Extensions do not require alteration of basic components
- User definable accumulators
- A variety of adaptors to change the callback signature: bind, hide, retype, compose and lambda call groups
- Various compilers and platforms are supported: gcc, cygwin, mingw32, MS .NET 2003, Sun Forte C++, Compaq C++, Intel C++
libsigc++ is known to build and work with the following compilers:
- g++ (>= 3.2, including Apple and Cygwin versions)
- Microsoft Visual C++ .NET 2003
- Intel C++ compiler
- SUN Forte C++ CC
- IBM AIX xlC
- Tru64 C++
- IRIX MIPSpro
Download (2.1MB)
Added: 2007-08-14 License: LGPL (GNU Lesser General Public License) Price:
490 downloads
ATLAS 3.6.0 / 3.7.37
ATLAS project is an ongoing research effort focusing on applying empirical techniques. more>>
ATLAS (Automatically Tuned Linear Algebra Software) project is an ongoing research effort focusing on applying empirical techniques in order to provide portable performance.
ATLAS provides C and Fortran77 interfaces to a portably efficient BLAS implementation, as well as a few routines from LAPACK.
Whats New in 3.7.37 Development Release:
- Some smoothing operations to allow easier use of Windows compilers, and many major bugfixes (primarily in system analysis for configuration).
<<lessATLAS provides C and Fortran77 interfaces to a portably efficient BLAS implementation, as well as a few routines from LAPACK.
Whats New in 3.7.37 Development Release:
- Some smoothing operations to allow easier use of Windows compilers, and many major bugfixes (primarily in system analysis for configuration).
Download (1.6MB)
Added: 2007-08-12 License: BSD License Price:
839 downloads
Pod::Compiler 0.20
Pod::Compiler can compile POD into an object tree. more>>
Pod::Compiler can compile POD into an object tree.
This package, based on Pod::Parser, compiles a given POD document into an object tree (based on Tree::DAG_Node). It prints errors and warnings about the POD it reads. The result can be used to conveniently convert the POD into any other format.
The resulting objects have a variety of methods to ease the subsequent conversion.
There are two script based on this package, namely podchecker2, an enhanced POD syntax checker and podlint, which beautifies the POD of a given file.
This package is object-oriented, which means that you can quite easily build a derived package and override some methods in case the given behaviour does not exactly suit your needs.
Package Functions
The following functions can be imported and called from a script, e.g. like this:
use Pod::Compiler qw(pod_compile);
my $root = pod_compile(myfile.pod);
pod_compile( { %options } , $file )
pod_compile( $file )
Compile the given $file using some %options and return the root of the object tree representing the POD in $file. The return value is either undef if some fatal error occured or an object of type Pod::root. See below for methods applicable to this class and for the options.
The special option -compiler => class lets you specify an alternate (derived) compiler class rather than Pod::Compiler.
Compiler Object Interface
The following section describes the OO interface of Pod::Compiler.
$c = Pod::Compiler->new( %options )
Set up a new compiler object. Options (see below) can be passed as a hash, e.g.
$c = Pod::Compiler->new( -warnings => 0 ); # dont be silly
Pod::Compiler inherits from Pod::Parser. See Pod::Parser for additional methods.
$c->initialize()
Initalize, set defaults. The following options are set to the given defaults unless they have been defined at object creation:
-errors => 1
Print POD syntax errors (using messagehandler) if option value is true.
-warnings => 1
Print POD syntax warnings (using messagehandler) if option value is true.
-idlength => 20
Pod::Compiler creates a unique node id for each =head, =item and X, consisting only of w characters. The option value specifies how many characters from the original node text are used for the node id by the built-in make_unique_node_id method. See below for more information.
-ignore => BCFS
This option specifies which interior sequences (e.g. B< ... >) are ignored when nested in itself, e.g. B< ...B< ... >... >. The inner B is simply discarded if the corresponding letter appears in the option value string.
-unwrap => I
This option specifies which interior sequences (e.g. I< ... >) are unwrapped when nested in itself, e.g. I< ...I< ... >... > is turned into I< ... >...I< ... >. While some destination formats may handle such nestings appropriately, other might have problems. This option solves it right away. By the way, from a typographical point of view, italics are often used for emphasis. In order to emphasize something within an emphasis, one reverts to the non-italic font.
name =>
This is used to store the (logical) name of the POD, i.e. for example the module name as it appears in use module;. It is used internally only to detect internal links pointing to the explicit page name. Example: You compile the file Compiler.pm which contains the package Pod::Compiler. You set name to Pod::Compiler (there is no safe automatic way to do so). Thus if the file includes a link like L< Pod::Compiler/messagehandler > it is recognized as an internal link and it is checked whether it resolves. Of course you should have written the link as L< /messagehandler >...
-perlcode => 0
If set to true, the compiler will also return the Perl code blocks as objects Pod::perlcode, rather than only the POD embedded in the file. This is used e.g. by podlint.
$c->option( $name , $value )
Get or set the compile option (see above) given by $name. If $value is defined, the option is set to this value. The resulting (or unchanged) value is returned.
$c->messagehandler( $severity , $message )
This method is called every time a warning or error occurs. $severity is one of ERROR or WARNING, $message is a one-line string. The built-in method simply does
warn "$severity: $messagen";
$c->name( [ $name ] )
Set/retrieve the name property, i.e. the canonical Pod name (e.g. Pod::HTML). See above for more details.
$c->root()
Return the root element (instance of class Pod::root) representing the compiled POD document. See below for more info about its methods.
$c->make_unique_node_id($string)
Turn given text string into a document unique node id. Can be overridden to adapt this to specific formatter needs. Basically this method takes a string and must return something (more or less dependent on the string) that is unique for this POD document. The built-in method maps all consecutive non-word characters and underlines to a single underline and truncates the result to -idlength (see options above). If the result already exists, a suffix _n is appended, where n is a number starting with 1. A different method could e.g. just return ascending numbers, but if you think of HTML output, a node id that resembles the text and has a fair chance to remain constant over subsequent compiles of the same document gives the opportunity to link to such anchors from external documents.
<<lessThis package, based on Pod::Parser, compiles a given POD document into an object tree (based on Tree::DAG_Node). It prints errors and warnings about the POD it reads. The result can be used to conveniently convert the POD into any other format.
The resulting objects have a variety of methods to ease the subsequent conversion.
There are two script based on this package, namely podchecker2, an enhanced POD syntax checker and podlint, which beautifies the POD of a given file.
This package is object-oriented, which means that you can quite easily build a derived package and override some methods in case the given behaviour does not exactly suit your needs.
Package Functions
The following functions can be imported and called from a script, e.g. like this:
use Pod::Compiler qw(pod_compile);
my $root = pod_compile(myfile.pod);
pod_compile( { %options } , $file )
pod_compile( $file )
Compile the given $file using some %options and return the root of the object tree representing the POD in $file. The return value is either undef if some fatal error occured or an object of type Pod::root. See below for methods applicable to this class and for the options.
The special option -compiler => class lets you specify an alternate (derived) compiler class rather than Pod::Compiler.
Compiler Object Interface
The following section describes the OO interface of Pod::Compiler.
$c = Pod::Compiler->new( %options )
Set up a new compiler object. Options (see below) can be passed as a hash, e.g.
$c = Pod::Compiler->new( -warnings => 0 ); # dont be silly
Pod::Compiler inherits from Pod::Parser. See Pod::Parser for additional methods.
$c->initialize()
Initalize, set defaults. The following options are set to the given defaults unless they have been defined at object creation:
-errors => 1
Print POD syntax errors (using messagehandler) if option value is true.
-warnings => 1
Print POD syntax warnings (using messagehandler) if option value is true.
-idlength => 20
Pod::Compiler creates a unique node id for each =head, =item and X, consisting only of w characters. The option value specifies how many characters from the original node text are used for the node id by the built-in make_unique_node_id method. See below for more information.
-ignore => BCFS
This option specifies which interior sequences (e.g. B< ... >) are ignored when nested in itself, e.g. B< ...B< ... >... >. The inner B is simply discarded if the corresponding letter appears in the option value string.
-unwrap => I
This option specifies which interior sequences (e.g. I< ... >) are unwrapped when nested in itself, e.g. I< ...I< ... >... > is turned into I< ... >...I< ... >. While some destination formats may handle such nestings appropriately, other might have problems. This option solves it right away. By the way, from a typographical point of view, italics are often used for emphasis. In order to emphasize something within an emphasis, one reverts to the non-italic font.
name =>
This is used to store the (logical) name of the POD, i.e. for example the module name as it appears in use module;. It is used internally only to detect internal links pointing to the explicit page name. Example: You compile the file Compiler.pm which contains the package Pod::Compiler. You set name to Pod::Compiler (there is no safe automatic way to do so). Thus if the file includes a link like L< Pod::Compiler/messagehandler > it is recognized as an internal link and it is checked whether it resolves. Of course you should have written the link as L< /messagehandler >...
-perlcode => 0
If set to true, the compiler will also return the Perl code blocks as objects Pod::perlcode, rather than only the POD embedded in the file. This is used e.g. by podlint.
$c->option( $name , $value )
Get or set the compile option (see above) given by $name. If $value is defined, the option is set to this value. The resulting (or unchanged) value is returned.
$c->messagehandler( $severity , $message )
This method is called every time a warning or error occurs. $severity is one of ERROR or WARNING, $message is a one-line string. The built-in method simply does
warn "$severity: $messagen";
$c->name( [ $name ] )
Set/retrieve the name property, i.e. the canonical Pod name (e.g. Pod::HTML). See above for more details.
$c->root()
Return the root element (instance of class Pod::root) representing the compiled POD document. See below for more info about its methods.
$c->make_unique_node_id($string)
Turn given text string into a document unique node id. Can be overridden to adapt this to specific formatter needs. Basically this method takes a string and must return something (more or less dependent on the string) that is unique for this POD document. The built-in method maps all consecutive non-word characters and underlines to a single underline and truncates the result to -idlength (see options above). If the result already exists, a suffix _n is appended, where n is a number starting with 1. A different method could e.g. just return ascending numbers, but if you think of HTML output, a node id that resembles the text and has a fair chance to remain constant over subsequent compiles of the same document gives the opportunity to link to such anchors from external documents.
Download (0.030MB)
Added: 2007-08-10 License: Perl Artistic License Price:
805 downloads
ExtUtils::CBuilder 0.19
ExtUtils::CBuilder is a Perl module to compile and link C code for Perl modules. more>>
ExtUtils::CBuilder is a Perl module to compile and link C code for Perl modules.
SYNOPSIS
use ExtUtils::CBuilder;
my $b = ExtUtils::CBuilder->new(%options);
$obj_file = $b->compile(source => MyModule.c);
$lib_file = $b->link(objects => $obj_file);
This module can build the C portions of Perl modules by invoking the appropriate compilers and linkers in a cross-platform manner. It was motivated by the Module::Build project, but may be useful for other purposes as well. However, it is not intended as a general cross-platform interface to all your C building needs. That would have been a much more ambitious goal!
<<lessSYNOPSIS
use ExtUtils::CBuilder;
my $b = ExtUtils::CBuilder->new(%options);
$obj_file = $b->compile(source => MyModule.c);
$lib_file = $b->link(objects => $obj_file);
This module can build the C portions of Perl modules by invoking the appropriate compilers and linkers in a cross-platform manner. It was motivated by the Module::Build project, but may be useful for other purposes as well. However, it is not intended as a general cross-platform interface to all your C building needs. That would have been a much more ambitious goal!
Download (0.019MB)
Added: 2007-08-07 License: Perl Artistic License Price:
809 downloads
SableCC 3.2 / 4 Alpha 3
SableCC is an object-oriented compiler framework. more>>
SableCC is an object-oriented framework that generates compilers (and interpreters) in the Java programming language. SableCC framework is based on two fundamental design decisions.
Firstly, the framework uses object-oriented techniques to automatically build a strictly typed abstract syntax tree. Secondly, the framework generates tree-walker classes using an extended version of the visitor design pattern which enables the implementation of actions on the nodes of the abstract syntax tree using inheritance.
These two design decisions lead to a tool that supports a shorter development cycle for constructing compilers.
Main features:
- Deterministic Finite Automaton (DFA) based lexers with full Unicode support and lexical states.
- Extended Backus-Naur Form grammar syntax. (Supports the *, ? and + operators).
- LALR(1) based parsers.
- Automatic generation of strictly-typed abstract syntax trees.
- Automatic generation of tree-walker classes.
Whats New in 3.2 Stable Release:
- SableCC now generates generic Java code.
Whats New in 4 Alpha 3 Development Release:
- Improved syntax for SableCC lexers.
- The exponent operator and code to implement its functionality.
- The Any keyword and code to implements its functionality.
- Robust and intuitive SableCC-based command line parsing.
- Parsing of lexer specifications.
- Partial semantic verification of lexer specifications.
- Improved build script.
- Additional unit tests.
- Additional documentation.
<<lessFirstly, the framework uses object-oriented techniques to automatically build a strictly typed abstract syntax tree. Secondly, the framework generates tree-walker classes using an extended version of the visitor design pattern which enables the implementation of actions on the nodes of the abstract syntax tree using inheritance.
These two design decisions lead to a tool that supports a shorter development cycle for constructing compilers.
Main features:
- Deterministic Finite Automaton (DFA) based lexers with full Unicode support and lexical states.
- Extended Backus-Naur Form grammar syntax. (Supports the *, ? and + operators).
- LALR(1) based parsers.
- Automatic generation of strictly-typed abstract syntax trees.
- Automatic generation of tree-walker classes.
Whats New in 3.2 Stable Release:
- SableCC now generates generic Java code.
Whats New in 4 Alpha 3 Development Release:
- Improved syntax for SableCC lexers.
- The exponent operator and code to implement its functionality.
- The Any keyword and code to implements its functionality.
- Robust and intuitive SableCC-based command line parsing.
- Parsing of lexer specifications.
- Partial semantic verification of lexer specifications.
- Improved build script.
- Additional unit tests.
- Additional documentation.
Download (0.49MB)
Added: 2007-07-26 License: The Apache License 2.0 Price:
822 downloads
Ragel State Machine Compiler 5.23
Ragel State Machine Compiler compiles state machines from regular languages. more>>
Ragel State Machine Compiler compiles finite state machines from regular languages into executable C/C++/Objective-C code. Ragel state machines can not only recognize byte sequences as regular expression machines do, but can also execute code at arbitrary points in the recognition of a regular language.
Ragel can also be thought of as a finite state transducer compiler where output symbols represent blocks of code that get executed instead of written to the output stream.
When you wish to write down a regular language you start with some simple regular language and build a bigger one using the regular language operators union, concatenation, kleene star, intersection and subtraction.
This is precisely the way you describe to Ragel how to compile your finite state machines. Ragel also understands operators that embed actions into machines and operators that control any non-determinism in machines.
Ragel FSMs are closed under all of Ragels regular language, action specification and priority assignment operators. This property allows arbitrary regular languages to be described. Complexity is limited only by available processing resources.
For example, you can make one machine that picks out specially formatted comments in C code, another machine that builds a list all function declarations and a third that identifies string constants then "or" them all together to make a single machine that performs all of these tasks concurrently and independently on one pass of the input.
Main features:
- Describe arbitrary state machines using regular language operators and/or state tables.
- NFA to DFA conversion.
- Hopcrofts state minimization.
- Embed any number of actions into machines at arbitrary places.
- Control non-determinism using priorities on transitions.
- Visualize output with Graphviz.
- Use byte, double byte or word sized alphabets.
- Generate C/C++/Objective-C code with no dependencies.
- Choose from table or control flow driven output.
Enhancements:
- The documentation and the Ruby code generator were improved.
<<lessRagel can also be thought of as a finite state transducer compiler where output symbols represent blocks of code that get executed instead of written to the output stream.
When you wish to write down a regular language you start with some simple regular language and build a bigger one using the regular language operators union, concatenation, kleene star, intersection and subtraction.
This is precisely the way you describe to Ragel how to compile your finite state machines. Ragel also understands operators that embed actions into machines and operators that control any non-determinism in machines.
Ragel FSMs are closed under all of Ragels regular language, action specification and priority assignment operators. This property allows arbitrary regular languages to be described. Complexity is limited only by available processing resources.
For example, you can make one machine that picks out specially formatted comments in C code, another machine that builds a list all function declarations and a third that identifies string constants then "or" them all together to make a single machine that performs all of these tasks concurrently and independently on one pass of the input.
Main features:
- Describe arbitrary state machines using regular language operators and/or state tables.
- NFA to DFA conversion.
- Hopcrofts state minimization.
- Embed any number of actions into machines at arbitrary places.
- Control non-determinism using priorities on transitions.
- Visualize output with Graphviz.
- Use byte, double byte or word sized alphabets.
- Generate C/C++/Objective-C code with no dependencies.
- Choose from table or control flow driven output.
Enhancements:
- The documentation and the Ruby code generator were improved.
Download (0.52MB)
Added: 2007-07-25 License: GPL (GNU General Public License) Price:
824 downloads
Kent Retargettable Occam Compiler 1.4.1-pre6
Kent Retargettable Occam Compiler is a multi-platform Occam 2.1 compiler. more>>
Kent Retargettable Occam Compiler is a multi-platform Occam 2.1 compiler that is designed to allow the Occam programming language to be used on non-Transputer platforms.
KRoC, the Kent Retargettable occam-pi Compiler, is a collection of programs/libraries which facilitates the execution of occam-pi programs on various platforms. The version on this page is only for i386 compatible processors running Linux (although it has been reported to work on FreeBSD systems too). The main components are:
- occ21, the Inmos occam compiler
- tranx86, a translator from extended transputer code (ETC) to intel i386 object code
- CCSP, the run-time kernel, providing the virtual transputer
Enhancements:
- The occSDL library has been added. Documentation errors have been fixed.
- There are minor bugfixes to the compiler, wrappers, and examples.
- New examples have been added, including the classic Adventure Game and Space Invaders.
<<lessKRoC, the Kent Retargettable occam-pi Compiler, is a collection of programs/libraries which facilitates the execution of occam-pi programs on various platforms. The version on this page is only for i386 compatible processors running Linux (although it has been reported to work on FreeBSD systems too). The main components are:
- occ21, the Inmos occam compiler
- tranx86, a translator from extended transputer code (ETC) to intel i386 object code
- CCSP, the run-time kernel, providing the virtual transputer
Enhancements:
- The occSDL library has been added. Documentation errors have been fixed.
- There are minor bugfixes to the compiler, wrappers, and examples.
- New examples have been added, including the classic Adventure Game and Space Invaders.
Download (11.4MB)
Added: 2007-07-24 License: GPL (GNU General Public License) Price:
823 downloads
DOMjudge 2.0.0
DOMjudge is an automated judgement system to run programming contests. more>>
DOMjudge is an automated judge system to run programming contests.
Main features:
- Lightweight, depends on standard software to do its task
- Webinterface for portability and simplicity
- Scalable: distributed judging is easy
- Modular system for plugging in languages/compilers
- Features rejudging, clarifications, detailed submission/judging info
- Designed with security in mind
- Has been used in live contests
- Its Open Source, Free Software
<<lessMain features:
- Lightweight, depends on standard software to do its task
- Webinterface for portability and simplicity
- Scalable: distributed judging is easy
- Modular system for plugging in languages/compilers
- Features rejudging, clarifications, detailed submission/judging info
- Designed with security in mind
- Has been used in live contests
- Its Open Source, Free Software
Download (1.1MB)
Added: 2007-07-23 License: GPL (GNU General Public License) Price:
826 downloads
Firewall Builder 2.1.13
Firewall Builder is a multi-platform firewall configuration and management system. more>>
Firewall Builder is a multi-platform firewall configuration and management system. It consists of a GUI and set of policy compilers for various firewall platforms.
Firewall Builder helps users maintain a database of objects and allows policy editing using simple drag-and-drop operations.
The GUI and policy compilers are completely independent, this provides for a consistent abstract model and the same GUI for different firewall platforms. It currently supports iptables, ipfilter, ipfw, OpenBSD pf and Cisco PIX.
Whats New in This Release:
Improvements and bug fixes in the GUI
* fixed bug #1740766: "lock not saved". This method now copies the value
of "ro" attribute (read-only). Clear it in the caller if neccessary.
Method duplicate() clears it after calling shallowDuplicate in order
to be able to modify the object, then restores this attribute to its
original value.
* fixed bug #1743117: "crash while editing any". Added check, user
should not be able to unlock Standard objects library
* fixed bug #1753188: "policy activation fails on PIX and IOS".
Installer failed if account used to authenticate to the router or PIX
went straight to enable mode after login.
* added simple template object for Cisco router 36xx
Improvements and bug fixes in policy compiler for iptables
* fixed bug #1746257: "fwbuilder breaks IPv6". Added an option to the
firewall settings dialog for iptables that controls whether compiler
should skip generation of the code to set default policy of all ipv6
chains to DROP. This option is off by default, that is compiler puts
the code in. This helps maintain backwards compatibility with old data
files that do not have this option, which is equivalent to this option
being "off".
* fixed bug #1747332: "missing CONNMARK/ restore mark in Output Chain"
* compiler permits setting direction in the rule while interface field
is "All". This generates iptables command in chain INPUT or OUTPUT
with "-i +" or "-o +" interface specification to match all interfaces.
Improvements and bug fixes in policy compiler for PF
* fixed bug #1747828: "anchors generation - "log" not supported". "Log"
keyword is not allowed in "anchor" rules; compiler should not generate
it even if user turned logging on in a rule with action Branch
* implemented support for PF limit options "src-nodes", "tables" and
"table-entries". Feature Req. #1674919: "Support "set limit
table-entries""
* better compliance with PF 4.x. Feature Req. #1679793: "add no state
and flags any". If version is set to 4.x, compiler skips "flags S/SA
keep state" for rules mathcing tcp services. However, according to the
section "1.2. Operational changes" in PF FAQ at
http://www.openbsd.org/faq/upgrade41.html , there should be a way to
add "keep state" explicitly for rules on interface enc0. Added this
option to the rule options dialog.
* Added support for "set skip on " command for PF. If an interface is
marked as "unprotected" in the GUI, compiler generates this command
for it. This is useful for loopback or other virtual interfaces.
Improvements and bug fixes in policy compilers for Cisco IOS ACL
* Fixed bug that caused compiler to exit abnormally while compiling a
rule with interface field "all". Compiler should generate ACL lines
for all interfaces of the router (except those marked "unprotected")
<<lessFirewall Builder helps users maintain a database of objects and allows policy editing using simple drag-and-drop operations.
The GUI and policy compilers are completely independent, this provides for a consistent abstract model and the same GUI for different firewall platforms. It currently supports iptables, ipfilter, ipfw, OpenBSD pf and Cisco PIX.
Whats New in This Release:
Improvements and bug fixes in the GUI
* fixed bug #1740766: "lock not saved". This method now copies the value
of "ro" attribute (read-only). Clear it in the caller if neccessary.
Method duplicate() clears it after calling shallowDuplicate in order
to be able to modify the object, then restores this attribute to its
original value.
* fixed bug #1743117: "crash while editing any". Added check, user
should not be able to unlock Standard objects library
* fixed bug #1753188: "policy activation fails on PIX and IOS".
Installer failed if account used to authenticate to the router or PIX
went straight to enable mode after login.
* added simple template object for Cisco router 36xx
Improvements and bug fixes in policy compiler for iptables
* fixed bug #1746257: "fwbuilder breaks IPv6". Added an option to the
firewall settings dialog for iptables that controls whether compiler
should skip generation of the code to set default policy of all ipv6
chains to DROP. This option is off by default, that is compiler puts
the code in. This helps maintain backwards compatibility with old data
files that do not have this option, which is equivalent to this option
being "off".
* fixed bug #1747332: "missing CONNMARK/ restore mark in Output Chain"
* compiler permits setting direction in the rule while interface field
is "All". This generates iptables command in chain INPUT or OUTPUT
with "-i +" or "-o +" interface specification to match all interfaces.
Improvements and bug fixes in policy compiler for PF
* fixed bug #1747828: "anchors generation - "log" not supported". "Log"
keyword is not allowed in "anchor" rules; compiler should not generate
it even if user turned logging on in a rule with action Branch
* implemented support for PF limit options "src-nodes", "tables" and
"table-entries". Feature Req. #1674919: "Support "set limit
table-entries""
* better compliance with PF 4.x. Feature Req. #1679793: "add no state
and flags any". If version is set to 4.x, compiler skips "flags S/SA
keep state" for rules mathcing tcp services. However, according to the
section "1.2. Operational changes" in PF FAQ at
http://www.openbsd.org/faq/upgrade41.html , there should be a way to
add "keep state" explicitly for rules on interface enc0. Added this
option to the rule options dialog.
* Added support for "set skip on " command for PF. If an interface is
marked as "unprotected" in the GUI, compiler generates this command
for it. This is useful for loopback or other virtual interfaces.
Improvements and bug fixes in policy compilers for Cisco IOS ACL
* Fixed bug that caused compiler to exit abnormally while compiling a
rule with interface field "all". Compiler should generate ACL lines
for all interfaces of the router (except those marked "unprotected")
Download (MB)
Added: 2007-07-23 License: GPL (GNU General Public License) Price:
835 downloads
Pipemeter 1.1.3
Pipemeter displays the speed and, if possible, progress, of data moving from its input to its output. more>>
Pipemeter is a command line utility that displays the speed and, if possible, progress, of data moving from its input to its output.
Main features:
- Shows speed of data moving from input to output.
- Shows percentage complete if regular file specified.
- Allows tuning of block size and display interval
- Support for dd style block size specification
Enhancements:
- This release is only known to be relevant for people using older compilers and FreeBSD.
- The copyright messages were updated.
- A patch to make pipemeter compile cleanly on older versions of gcc was applied.
- The pkgpipemeter.sh script was fixed to create tags in the tags directory.
<<lessMain features:
- Shows speed of data moving from input to output.
- Shows percentage complete if regular file specified.
- Allows tuning of block size and display interval
- Support for dd style block size specification
Enhancements:
- This release is only known to be relevant for people using older compilers and FreeBSD.
- The copyright messages were updated.
- A patch to make pipemeter compile cleanly on older versions of gcc was applied.
- The pkgpipemeter.sh script was fixed to create tags in the tags directory.
Download (0.018MB)
Added: 2007-07-20 License: GPL (GNU General Public License) Price:
826 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above compilers search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed