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 32.291.927 Times

R2cl 0.1

  Date Added: November 02, 2010  |  Visits: 670


Report Broken Link
Printer Friendly Version

Product Homepage
Download (71 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
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  
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  
Programming  -  Common Lisp Reasoner 2.0.1
The Common Lisp Reasoner extends the Common Lisp Object System (CLOS) to incorporate a rule language, an XML interface, and support for AI-related search and reasoning tasks such as scheduling, planning, diagnosis and predictive reasoning.
115 KB  
Linux Software  -  wpCache® WordPress HTTP Cache 1.9
wpCache® is a high-performance, distributed object, caching system application, generic in nature, but intended for use in speeding up dynamic web applications, by decreasing database load time. wpCache® decreases dramatically the page...
3.51 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  
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  -  Math::GMPf 0.29
Math::GMPf - perl interface to the GMP library's floating point (mpf) functions.
30.72 KB  
Programming  -  Net::Wire10 1.08
Net::Wire10 is a Pure Perl connector that talks to Sphinx, MySQL and Drizzle servers. Net::Wire10 implements the low-level network protocol, alias the MySQL wire protocol version 10, necessary for talking to one of the aforementioned...
30.72 KB  
Programming  -  logilab-common 0.56.2
a bunch of modules providing low level functionnalities shared among some python projects devel Please note that some of the modules have some extra dependencies. For instance, logilab.common.db will require a db-api 2.0 compliant...
174.08 KB  
Programming  -  OpenSSL for linux 1.0.0a
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a...
3.83 MB