native compiler support only available in c compiler
JavaNativeCompiler 1.1.1
JavaNativeCompiler (JNC) is a Java to native compiler. more>>
This is especially useful when applications have to be deployed to end-users. All vexatious problems of deploying Java applications can be solved by compiling them to native. They will be:
- Easy to deploy
No JRE dependency. Most end-users dont know what they have installed.
No more problems on how to create an executable file out of a JAR or class file.
- Hard to decompile
Java can easily be decompiled. Native compilation will protect your source code.
- Run fast from the start
No more overhead for loading a JRE.
Enhancements:
- This release fixes a couple of problems with AWT/Swing and XML.
- It also once again contains a version for Linux.
- The compiler binary downloads are smaller.
The Amsterdam Compiler Kit 6.0 pre3
The Amsterdam Compiler Kit is a fast, lightweight and retargetable compiler suite and toolchain. more>>
The ACK achieves maximum portability by using an intermediate byte-code language called EM. Each language front-end produces EM object files, which are then processed through a number of generic optimisers before being translated by a back-end into native machine code.
Unlike gccs intermediate language, EM is a real programming language and could be implemented in hardware; a number of the language front-ends have libraries implemented in EM assembly. EM is a relatively high-level stack-based machine, and one of the tools supplied with ACK is an interpreter capable of executing EM binaries directly, with a high degree of safety checking. See the em document referenced below for more information.
ACK comes with a generic linker and librarian capable of manipulating files in the ACKs own a.out-based format; it will work on files containing EM code as well as native machine code. (You can not, however, link EM code to native machine code without translating the EM binary first.)
Installation:
To install the ACK, you need to download the source package and compile it.
Version 5.6 compiles cleanly on Linux, but it has had little testing so far. The installation instructions are complex but straightforward provided you follow the instructions. Please read the README; it provides a detailed walk-through of the compilation process, telling you what to type at each stage.
Enhancements:
- Support has been added for generating CP/M binaries using the 8080 code generator.
- The various optimisers have been beaten into shape, and its now possible to use them on all platforms; a basic peephole optimiser has been set up for the 8080.
- The floating point system has been confirmed working on the pc86 and linux386 platforms.
- ANSI compatibility has been improved, binary sizes have been reduced, and there are many bugfixes everywhere.
4tH compiler 3.5b
4tH is a Forth compiler with a little difference. more>>
4tH is a very small compiler that can create bytecode, C-embeddable bytecode, standalone executables, but also works fine as a scripting language. It supports over 85% of the ANS Forth CORE wordset and features conditional compilation, pipes, files, assertions, forward declarations, recursion, include files, etc.
It comes with an RPN calculator, line editor, compiler, decompiler, C-source generators, and a virtual machine.
Enhancements:
- More CORE words and most of the DOUBLE wordset are supported.
- Output buffers can be flushed.
- An experimental multitasking environment was added.
ChainBuilder ESB for Linux 2.0
ChainBuilder ESB is an open source solution for use in Service Oriented Architecture (SOA) environments. ChainBuilder ESB creates standards-based components though drag and drop graphical user interfa more>>
ChainBuilder ESB is an open source Enterprise Service Bus. ChainBuilder ESB allows IT developers with Service Oriented Architecture (SOA) infrastructures to create standards-based ESB components through Eclipse-based graphical user interfaces. Most organizations SOAs need to include strategic backend systems that operate with non-XML data formats and non-WebServices communication protocols. Bostech focus on usability ensured the initial offerings of ChainBuilder ESB had industry standard editors to manage EDI X12, HL7, fixed and variable formats and communication components for TCP/IP, FTP and file protocols and database components for JMS and ETL integrations - the formats and protocols that organizations with mature applications absolutely require. ChainBuilder ESB also has uncommon high-end open source features, like an AJAX-based Console web interface for monitoring and controlling the production environment, usually found only with expensive proprietary systems. Bostech Corporation is deploys a dual-license distribution model for ChainBuilder ESB. Developers can download the open source software for Windows, Linux and Unix under the common GPL license at http://www.chainforge.net. A commercial license and subscription support is also available for enterprises and software vendors.
System Requirements: P4/1GB ram/10GB HD min; dual 3.0Ghz/2GB ram preferred
System Requirements: 2.0, Oct 2008 1.3.1, July 2008, incls Java 6 1.2, Mar 2008, incls ETL and Vista 1.1, Aug 2007, incls HL7, POP3, SMTP and framework; 1.0, Jan 2007, incls console and JDBC support; Beta Release, Dec 2006, incls source code and Linux support; Alpha Release, Sep 2006, incls Windows support;
<<lessIntel C++ Compiler 10.0
Intel C++ Compiler application is a full fledged C/C++ compiler and debugger suite. more>>
It provides optimization technology, threaded application support, and features to take advantage of Hyper-Threading technology. It is substantially source and object code compatible with GNU C, providing fullest compatibility with GCC and G++ 3.x/4.x both in terms of code and of API. It is thereby also easy to integrate with existing development environments.
Inline-Support 0.44
Inline-Support is a Perl module created to support information for Inline.pm and related modules. more>>
This document contains all of the latest support information for Inline.pm and the recognized Inline Language Support Modules (ILSMs) available on CPAN.
SUPPORTED LANGUAGES
The most important language that Inline supports is C. That is because Perl itself is written in C. By giving a your Perl scripts access to C, you in effect give them access to the entire glorious internals of Perl.
As of this writing, Inline also supports:
- C++
- Java
- Python
- Tcl
- Assembly
- CPR
- And even Inline::Foo!
Projects that I would most like to see happen in the year 2001 are:
- Fortran
- Ruby
- Lisp
- Guile
- Bash
- Perl4
SUPPORTED PLATFORMS
Inline::C should work anywhere that CPAN extension modules (those that use XS) can be installed, using the typical install format of:
perl Makefile.PL
make
make test
make install
It has been tested on many Unix and Windows variants.
Enhancements:
- Perl
Aubit 4GL compiler 1.00.44
Aubit 4GL compiler is a project to make a free Informix-4GL compatible compiler. more>>
With support for SQL statements forming an intrinsic part of the language, its especially suitable for developing database-oriented applications. Database connectivity is provided for PostgreSQL, Informix, and ODBC. It supports both ncurses (console mode) and GTK+ (GUI mode) output.
Java Brainfuck Compiler 2.0
Java Brainfuck Compiler is an optimising Brainfuck to Java bytecode compiler. more>>
Steel Bank Common Lisp 1.0.8
Steel Bank Common Lisp is a common Lisp native compiler. more>>
Steel Bank Common Lisp also includes many extensions, such as native threads, socket support, a statistical profiler, programmable streams, and more. These are all available through an integrated, interactive native compiler which feels like an interpreter.
SBCL is unique in being a multiplatform native compiler which bootstraps itself completely from source, using a C compiler and any other ANSI Common Lisp implementation.
Whats New in This Release:
* enhancement: experimental macro SB-EXT:COMPARE-AND-SWAP provides
atomic compare-and-swap operations on threaded platforms.
* enhancement: experimental function SB-EXT:RESTRICT-COMPILER-POLICY
allows assining a global minimum value to optimization qualities
(overriding proclamations and declarations).
* enhancement: closed over variables can be stack-allocated on x86
and x86-64.
* performance bug fix: GETHASH and (SETF GETHASH) are once again
non-consing.
* optimization: slot definition lookup is now O(1). This speeds up
eg. SLOT-VALUE and (SETF SLOT-VALUE) with variable slot names.
* optimization: STRING-TO-OCTETS is now up to 60% faster for UTF-8.
* optimization: ASSOC and MEMBER can now be open-coded for all
combinations of keyword arguments when second argument is constant
and SPEED >= SPACE. In other cases a specialized version is
selected.
* bug fix: using obsoleted structure instances with TYPEP and
generic functions now signals a sensible error.
* bug fix: threads waiting on GET-FOREGROUND can be interrupted.
(reported by Kristoffer Kvello)
* bug fix: backtrace construction is now more careful when making
lisp-objects from pointers on the stack, to avoid creating bogus
objects that can be seen by the GC.
* bug fix: defaulting of values in contexts expecting more than 7
variables now works on x86-64. (reported by Christopher Laux)
* bug fix: modifications to packages (INTERN, EXPORT, etc) are now
thread safe.
* bug fix: (SETF SYMBOL-PLIST) no longer allows assigning a non-list
as the property-list of a symbol.
* bug fix: DEFMETHOD forms with CALL-NEXT-METHOD in the method body,
in EVAL-WHEN forms with both :COMPILE-TOPLEVEL and :LOAD-TOPLEVEL
situations requested, are once again file-compileable. (reported
by Sascha Wilde)
Portable Object Compiler 0.2.2
Portable Object Compiler project consists of a set of Objective-C class libraries and a precompiler (translator) that generates more>>
Main features:
- Easy to install or to modify.
- Works on many systems with the native cc, debugger, profiler etc. (Unix, Windows, Macintosh, Beos, OpenVMS etc. see Platforms.txt file)
- Option for reference counted memory management (-refcnt). This uses the native malloc(), free() etc. but the compiler generates statements for keeping track of references (Tested on a few platforms, such as IRIX 5.2 with the SGI malloc).
- Built-in possibility of tracing Objective C messages. (OBJCRTMSG)
- Straightforward "C" messenger; "inline cache" messenger. Forwarding C messenger (to support -doesNotUnderstand:).
- All classes get a +initialize message at start-up, rather than each class receives a +initialize before it receives its first message.
- Some support for translating Objective-C to Smalltalk (-st80 option)
- Automatic archiver. Compiler generates code for classes to save and load objects to and from disk (for all instance variables of type "id").
- Option for Garbage Collection (using Boehm gc package). Tested on some UNIXes and WIN32. Option for reference counted memory management (doesnt require Boehm).
- Exception handling scheme (using Objective-C Blocks) that allows to specify a default handler to be executed.
- Supports dynamically loading Objective-C modules on Windows, FreeBSD, HP-UX, Linux, IRIX, Digital Unix etc.
- Has a switch for double indirection for Object identifiers (id as a handle instead of a pointer). (-become: method)
- Supports forwarding messages (-doesNotUnderstand: method)
- Support for Embedded SQL in Objective-C (Informix only for now)
- Great system for experimentation with your own additions/extensions to Objective C !
Arithmetic Operations Simulation Library 0.01
Arithmetic Operations Simulation Librarys aim is to develop an open source library to simulate heavy arithmetic operations. more>>
Finding different ways to solve a problem has been an interesting way to relax for many people. Not only they derive some kicks out of it, but as a side effect they develop much deeper insight into the problems enabling them to work out solutions under different constraints easily.
Here you will find discussion/hints to solve some common programming problems in efficient ways, supported with code that you can try.
DSP Programming Tricks
Often support for many heavy arithmetic operations goes missing to reduce the chip cost for marketability reasons, or during chip development stages. And we programmers have to make for the lack of these.
Accessing recent N items in history
This problem attracted my attention during DSP guest lectures by Mr. Ganesh Bhokare at PUCSD in later half of 2005. Various programming solutions to this problem would be.
Maintain a circular buffer in an array of N (or N+1) items. This will require support for MOD operation.
In case N is a power of 2, bitwise-anding with (N-1) can be used in place of MOD.
If neither N is a power of 2, nor MOD support is available?
Enhancements:
- This version supports finding the first 1/0 bit from left/right (lsb/msb), 16-bit unsigned numbers multiplication, division and mod operations, and also special cases of division by 3.
The Glasgow Haskell Compiler 6.6
The Glasgow Haskell Compiler is a compiler for Haskell 98. more>>
Main features:
- GHC supports the entire Haskell 98 language plus a wide variety of extensions.
- GHC works on several platforms including Windows and most varieties of Unix, and several different processor architectures. There are detailed instructions for porting GHC to a new platform.
- GHC has extensive optimisation capabilities, including inter-module optimisation.
- GHC compiles Haskell code either by using an intermediate C compiler (GCC), or by generating native code on some platforms. The interactive environment compiles Haskell to bytecode, and supports execution of mixed bytecode/compiled programs.
- Profiling is supported, both by time/allocation and various kinds of heap profiling.
- GHC comes with a wide range of libraries.
GHC is heavily dependent on its users and contributors. Please come and join the mailing lists and send us your comments, suggestions, bug reports and contributions!
Enhancements:
- SMP support and impredicative polymorphism were added.
- The libraries were split into core and extra.
- Many more changes were made.
Scriptol to binary Compiler
Scriptol to binary Compiler is a C++ native compiler. more>>
Installation:
It is better to install Scriptol at root of a disk, for example:
c:scriptolc
Once the archive is extracted into the scriptolc directory, you have just to change to this directory to run the compiler.
To use the compiler at command line from any directory, you have to put the compiler into the path variable.
The setup script installs required file into sub-directories, or into the directory given as argument. Before to use the compiler, you have to read the licence, in the doc
directory: licence.html.
Usage:
Just type:
./solc mysource
Type "solc" only to list the options.
If your program is a multi-file project, the source given as parameter must be the main source file, the compiler will know dependencies from "include" statements and will build what is needed.
Exemples:
Type from the main scriptol directory:
./solc -bre demosfibo
Configuring:
By editing the solc.ini file, you may change the second pass compiler (you may have to rebuild the libsol library for this compiler), change the options of the compiler or add header files to include.
To add header files, just add "header=someheader.hpp" lines into the config file.
A xxx.cfg file may be written for each project main source beeing xxx, and if present, it overloads the solc.ini file.
The WebDruid 0.6.0 Alpha 2
The WebDruid is a Web server log file analyzer. more>>
Yearly, monthly, daily and hourly usage statistics are presented, along with the ability to display usage by site, URL, referrer, user agent (browser), search engines & search string, entry/exit page, username and country (some information is only available if supported and present in the log files being processed).
Processed data may also be exported into most database and spreadsheet programs that support tab delimited data formats.
Main features:
- Its written using the C language, which allows it to be extremely fast. It wont kill the machine on which it runs. Thats why many people use it on the same machine that hosts the web site.
- It works on almost any Unix system
- Its output is quite tunable through the use of a configuration file or command line parameters
- It supports Common Logfile Format server logs. In addition, several variations of the Combined Logfile Format are supported.
- Generated reports are independant, can be moved, copyed, stored on CD. No database system, nor web server is required to read reports.
- It produces nice graphs displaying what users are doing in the site.
- It gives a fine grained analysis of what key words in which engines people use to reach each page.
Open RObot COntrol Software 1.2.1
Open RObot COntrol Software (Orocos) framework applies software patterns in C++ to achieve real-time execution of software... more>>
The Orocos project started as a Free Software project for robotics, but it has outgrown its robotics-dependent roots. Hence, "Orocos" now consists of two decoupled but integrated sub-projects:
Open Realtime Control Services.
This is a hard realtime Software Framework for all possible machine control applications, fully independent of the projects original robotics focus. It is designed to run safely parallel user defined tasks, on both vanilla Linux 2.6 and hard realtime RTAI. Extensive graphical configuration support is available.
Available features: hardware abstraction, operating system abstraction, event handling, hierarchical and parallel state machines, realtime "PLC" scripting, command parsing, online property configuration, multiple time- and event-triggered threads, advanced data protection for synchronous/asynchronous data flow, strongly typed data flow, (on-line) configuration support, ...
Integration between RTAI and TAO and ACE is also part of the ongoing work towards a hard realtime distributed control infastructure based on CORBA.
Open Robot Control Software.
A set of class libraries and an application framework offering generic functionality for machine tools and robots: cascaded control loops and control components, motion generation and interpolation; kinematics and dynamics; robot-specific control algorithms; estimation and identification; etc.
The following families of applications have working implementations available: force-controlled 6R manipulator arm and Cartesian XYZ machine tools. We would welcome developers to start mobile robot and humanoid robot application(s). In those efforts, much of the material of the above-mentioned applications can be reused. In addition, detailed support is available through the Developers mailing list. So, each new application requires moderate programming effort. (Not taking into account system-dependent modules such as device drivers, or kinematic routines.)
Open RObot COntrol Software is designed to appeal to roboticists. See the Orocos project homepage for an automated download script.
Enhancements:
- Support for RTAI 3.4 and 3.5 was improved.
- Various fixes were made in the CORBA support layer.
- The example code and documentation had a review.