Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.542.327 Times

R2cl 0.1

  Date Added: November 02, 2010  |  Visits: 626


Report Broken Link
Printer Friendly Version

Product Homepage
Download (70 downloads)

R2cl compiler is a minimal, proof of concept translator from the R or S language into Common Lisp. An increase in speed of over 1000 times can then be achieved using the free CMU Common Lisp native code compiler on the resulting code, making it comparable to FORTRAN, Ada or C. Installation: To install you need first to install cmucl (the CMU Common Lisp) and R. Both come with most Linux distributions by default but you must select them for installation. I think most recent (after 2000) versions will work. I have R 1.5.1 and cmucl x86-linux 3.0.8 18c+ running on Debian 3.0 (woody). You must be running the bash shell (which is the default) and have gnu make on your system (which you normally have). Just untar the distribution archive: tar xvzf R2cl-0.1.tgz It will create the directory R2cl. Type: cd R2cl make and watch translation, compilation and duration of execution of benchmarks. Thats all, except if you want to have a look at the code. R is a reimplementation of the S language for statistical processing. It is a free project, see R is a highly expressive matrix language (it makes extensive use of matrix and vector operators) with a huge library of statistical functions. However, expressivity requires a dynamic execution engine based on an infinite memory model which is slow. It also requires that expressions and function can be constructed by a program or introduced by an operator at runtime thus enforcing the an interpreted approach. This makes strighforward implementations of it slow. For programs that might have an equivalent in FORTRAN, that FORTRAN equivalent would be over 1000 times faster. Lisp is a language with the same execution model, except the that it is even more general, and include extensive macro and object oriented feature. There are may flavors, but the main currents are Scheme (which is reductionist, favoring simplicity) and Common Lisp (the ISO standard which is extensive and highly concerned with efficient compilation). None of these languages would be easy to fully translate, say, in C. To have the complete language you need, at least in part, to have the intepreting engine and the infinite memory machine intimately combined with the generated code. However, there is no reason for pieces of code which make no use of the generality (such as source code generation and execution at runtime) not to be compilable to code as fast as FORTRAN. In practice, this is a huge task. Nevertheless, it was achieved in a free implementation, for example in CMU CommonLisp, as I was delighted to learn when trying these benchmarks. The semantics of R is a subset of the semantics of Scheme. It also includes, of course, a wealth of data types suitable for statistics. The semantics (expressive mechanisms) of CommonLisp are probably a superset of Scheme. This means that R is easy to express in Scheme (actually the engine of the free implementation is a Scheme engine) and perhaps easy to translate in CommonLisp. This later is interesting because of the availability of the efficient compiler. So I arrived at this toy project, to check if such a route for the efficient compilation of R is possible. Many R applications dont need speed. You can describe the job you need done so quickly that you rarely mind to wait a couple of seconds for the system to do it. However, there are also whole classes of applications where speed is necessary and if a complete porting of R on CommonLisp (really big project) would be done they would all become feasible for R users like myself.. Home page of the R2cl, the R (Splus) to Common Lisptranslator

Requirements: No special requirements
Platforms: Linux
Keyword: Cmu Code Common Common Lisp Commonlisp Fortran Language Proof Of Concept S Language Scheme
Users rating: 0/10

License: Freeware Size: 5.12 KB
More Reviews or Write Review

Arcade Style Games  -  Invasores 0.9 Beta 3
Invasores project was first designed as a proof of concept of which language would be faster to develop games..
286.72 KB  
Entertainment  -  LearnEfik 1.2
Listen and Learn the important phrases in Efik Language with ease. It is one of Ngeria's language spoken in Calabar. It's so much fun to learn, just tap the button that contains the phrase and listen to how it is being said as well as the...
2.7 MB  
Language  -  L-Lingo Arabic 4.1
L-Lingo Arabic is designed for learners without or with little previous knowledge of the Arabic language. ... 105 lessons, comparable to 1-2 years of studying (professional version)...covering traveling & social life, at home, at work, body & mind...
30.62 MB  
Libraries  -  Apache::Language 0.14
Apache::Language is a Perl transparent language support for Apache modules and mod_perl scripts. SYNOPSIS In sub handler { my $r = shift; use Apache::Language; my $lang = Apache::Language->new($extra_args); #$lang is now a...
15.36 KB  
Development Tools  -  phplangeditor 1.0
phpLangEditor is a GUI for translation of language files of your PHP applications. To translate such a file translators usually use a text editor or better a code editor, but it is not the simpliest way for translators that do not want to handle...
Programming  -  Inlab-Scheme 4.108
Inlab-Scheme is an independent implementation of the algorithmic language Scheme and conforms to the R4RS and the IEEE Standard 1178. In addition to the language core, Inlab-Scheme has support for image processing which allows the implementation...
89.09 KB  
Programming  -  Java version of Lua programming language 0.01
This project is the port of Lua programming language to Java platform. It contains the bytecode compiler and interpreter, that use the same bytecode format as the original version, and partially support standard Lua library.
88.91 KB  
Libraries  -  JOpenChart 0.94
JOpenChart provides a Java library and toolkit for generating and embedding charts into applications. JOpenChart is a free Java Toolkit and library for embedding charts into different kinds of applications, no matter if they are server side,...
Programming  -  CMU Common Lisp 19d
CMU Common Lisp is a free implementation of the Common Lisp programming language which runs on most major Unix platforms. CMU Common Lisp project mainly conforms to the ANSI Common Lisp standard.. CMUCL is a high-performance, freeCommon Lisp...
3.44 MB  
Development Editors  -  Ufasoft Lisp Studio 4.31
Common Lisp development system. Includes console and IDE Lisp interpreter and compiler. Possibility of creating EXE-files. Supports CLOS. It is smallest implementation of standard Lisp, just 1MB of binary code.
3 MB  
Linux Software  -  Polling Autodialer Software 3.4
ICTBroadcast Auto Dialer software has a survey campaign for telephone surveys and polls. This auto dialer software automatically dials a list of numbers and asks them a set of questions that they can respond to, by using their telephone keypad....
488 B  
Linux Software  -  Total Video Converter Mac Free 3.5.5
Total Video Converter Mac Free developed by EffectMatrix Ltd is the official legal version of Total Video Converter which was a globally recognized brand since 2006. Total Video Converter Mac Free is a free but powerful all-in-one video...
17.7 MB  
Linux Software  -  Skeith mod_log_sql Analyzer 2.10beta2
Skeith is a php based front end for analyzing logs for Apache using mod_log_sql.
47.5 KB  
Linux Software  -  SLAX 6.0+
Slax is a modern, portable, small and fast Linux operating system with a modular approach and outstanding design. Despite its small size, Slax provides a wide collection of pre-installed software for daily use, including a well organized graphical...
190 KB  
Linux Software  -  GTK+ 2.5
GTK+, which stands for the GIMP Toolkit, is a library for creating graphical user interfaces for the X Window System. It is designed to be small, efficient, and flexible. GTK+ is written in C with a very object-oriented approach. Language bindings...
60 MB  
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB