Download A Practical Lambda Calculator 2 2 - A Practical Lambda Calculator 2 2 Description, A Practical Lambda Calculator 2 2 Reviews
Contact
 


 

Download

 
Download Now (22K)
Public Domain
Downloads till now: 12
 
 

Quick search

 



 

Rate this software

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

No. Votes

0

 

Linux

Archeology, Artificial Intelligence , Astronomy , Bioinformatics , Chemistry , Electronic Design Automation (, Electronic Design Automation (EDA) , Geographical , Image Recognition , Mathematics , Medical Science Apps. , Neuroscience , Visualization ,

Windows

Mac

Mobile

Drivers

Scripts - DHTML

Scripts - DHTML (new)

Web Developer Blog

Web Developer Blog (new)

Scripts and Applications

Ajax
ASP
ASP.NET
C and C++
CFML
CGI and Perl
Flash
Java
JavaScript
PHP
Python
XML

A practical lambda-calculator 2.2

 

Details

Size: 22K
Last Update: 2008-04-15 23:41:38
OS Support: Linux
License/Program Type: Public Domain
Publisher: Oleg
Price:$0.00
Description:

A practical lambda-calculator 2.2 is mathematics software developed by Oleg.
A practical lambda-calculator is a normal-order evaluator for the untyped lambda-calculus, extended with convenient commands and shortcuts to make programming in it more productive.



Shortcuts are distinguished constants that represent terms. Commands define new shortcuts, activate tracing of all reductions, compare terms modulo alpha-conversion, print all defined shortcuts and evaluation flags, etc.

Terms to evaluate and commands are entered at a read-eval-print-loop (REPL) "prompt" or "included" from a file by a special command. A Haskell branch is an embedding of the lambda calculator (as a domain-specific language) into Haskell. The calculator can be used interactively within Hugs or GHCi.

The present calculator implements what seems to be an efficient and elegant algorithm of normal order reductions. The algorithm is "more functional" than the traditionally used approach.

The algorithm seems identical to that employed by yacc sans one critical difference. The calculator also takes a more "functional" approach to the hygiene of beta-substitutions, which is achieved by coloring of identifiers where absolutely necessary. This approach is "more functional" because it avoids a global counter or the threading of the paint bucket through the whole the process. The integration of the calculator with Haskell lets us store terms in variables and easily and intuitively combine them.

The traditional recipe for normal-order reductions includes an unpleasant phrase "cook until done". The phrase makes it necessary to keep track of reduction attempts, and implies an ugly iterative algorithm. We're proposing what seems to be an efficient and elegant technique that can be implemented through intuitive re-writing rules.

Our calculator, like yacc, possesses a stack and works by doing a sequence of shift and reduce steps. The only significant difference from yacc is that the lambda-calculator "reparses" the result after the successful reduce step. The source and the target languages of our "parser" (lambda-calculator) are the same; therefore, the parser can indeed apply itself.

The parsing stack can be made implicit. In that case, the algorithm can be used for normalization of typed lambda-terms in Twelf.

The following examples show that lambda-calculus becomes a domain-specific language embedded into Haskell:

> c0 = f ^ x ^ x -- Church numeral 0
> succ = c ^ f ^ x ^ f (c f x) -- Successor

> c1 = eval $ succ c0 -- pre-evaluate other numerals
> c2 = eval $ succ c1
> c3 = eval $ succ c2
> c4 = eval $ succ c3

It is indeed convenient to store terms in Haskell variables and pre-evaluate (i.e., normalize) them. They are indeed terms. We can always ask the interpreter to show the term. For example, show c4 yields (f. (x. f (f (f (f x))))).

let mul = a ^ b ^ f ^ a (b f) -- multiplication
eval $ mul c1 ---> (b. b), the identity function
eval $ mul c0 ---> (b. (f. (x. x))), which is "const 0"

These are algebraic results: multiplying any number by zero always gives zero. We can see now how lambda-calculus can be useful for theorem proving, even over universally-quantified formulas.

The calculator implements Dr. Fairbairn's suggestion to limit the depth of printed terms. This makes it possible to evaluate and print some divergent terms (so-called tail-divergent terms):

Lambda_calc> let y_comb = f^((p^pp) (c ^ f(cc))) in eval $ y_combc
c (c (c (c (c (c (c (c (c (c (...))))))))))

It is amazing how well lambda-calculus and Haskell play together.
A practical lambda-calculator 2.2 supports different languages (including english). It works with Linux.

Downloading A practical lambda-calculator 2.2 will take several seconds if you use fast ADSL connection.

Leave a comment




(optional)

What is 7-3?




0 comments


Add to

 Del.icio.us   Digg It   Furl   YahooMyWeb   Blinklist
 

A practical lambda-calculator 2.2 Version History

Product Date Added
A practical lambda-calculator 2.2 2008-04-15 23:41:38


Related Software

Elca
From category: Mathematics
Elca (Extended Line Calculator) evaluates mathematical expressions (more precisely Perl expressions)....
Coyotl
From category: Mathematics
Coyotl 3.1.0 is mathematics software developed by Scott Robert Ladd. The Coyotl library defies easy classification much like it\'s namesake. Coyotl collects several C++ tools that have proven usefu...
Pattern lab
From category: Image-Recognition
Pattern-lab is a pattern recognition program....
BOTEC
From category: Astronomy
BOTEC 0.3.4 is astronomy software developed by Erik Max Francis. BOTEC project is a simple astrophysical and orbital mechanics calculator, including a database of all named Solar System objects. \...
Freeplot
From category: Mathematics
Freeplot 0.0.1 Alpha is mathematics software developed by Davidlohr Bueso Arnet. FreePlot is a simple mathematical program that plots 2-D functions written in Python. Freeplot provides an easy to u...
Discrete Event Calculus Reasoner
From category: Artificial-Intelligence
Discrete Event Calculus Reasoner 1.0 is artificial intelligence software developed by Erik T. Mueller. Discrete Event Calculus Reasoner is an open source program for performing automated commonsens...
RPL 2
From category: Mathematics
RPL/2 is a programming language for computations....
Array Designer 4.11
From category: Bioinformatics
Array Designer 4.11 is bioinformatics software developed by PREMIER Biosoft International. Array Designer project can help design thousands of efficient, highly specific oligos to make microarrays...
Mirth
From category: Medical-Science-Apps
Mirth is a cross-platform HL7 interface engine that enables bi-directional sending of HL7 messages....
Cvtool
From category: Visualization
Cvtool is a general-purpose computer vision tool....
ASCO 0.4.5
From category: Electronic-Design-Automation
ASCO 0.4.5 is electronic design automation ( software developed by ASCO Team. ASCO aka A SPICE Circuit Optimizer project aims to bring circuit optimization capabilities to existing SPICE simulators...
FractalEye
From category: Visualization
FractalEye 1.0.1 is visualization software developed by Frank Mertens. FractalEye is a height map generation by fractal formulas and perlin noise. Heights are delivered by a fractal formula or DEM...
BMI Calculator
From category: Medical-Science-Apps
BMI Calculator 1.1 is medical science apps. software developed by Boulat Khakimov. BMI Calculator is a simple, easy-to-use BMI calculator. It accepts input in both the English and Metric measuring...
Cora
From category: Astronomy
Cora 3.2 is astronomy software developed by Jan-Uwe Ness and Rainer Wichmann. Cora is a line fitting tool designed for emission line spectra with low count numbers. Cora is an optional Gtk...
LeoStatistic Awarded Software
From category: Mathematics
Universal tool for statistical analysis and modeling of experimental and market data. Support import data from variety of data sources. Statistical schemes cover all major data modeling operations. Cr...
 

Top Downloads

 
1. USBDeview
2. VSO Drive Inspector Tool
3. H&H China2Go Talking PhraseBook (Cantonese Ed.)
4. Canon PIXMA MP220 MP Drivers
5. Canon PIXMA MP210 MP Navigator EX
6. LingvoSoft Middle Eastern Pack

DownloadTube Editor Reviews

 
1. iOrgSoft 3GP Video Converter
iOrgSoft 3GP Video Converter is a smart, reliable, affordabl...
2. Easy Time Control Professional
Easy Time Control Professional Edition is a smart software s...
3. AceErase File Shredder
AceErase is an easy to use, smart and secure file shredder a...
4. Video Converter
Video Converter is an easy-to-use tool that enables the user...
5. Andromeda Hyper 3GP Converter
Andromeda Hyper 3GP Converter is a simple, intuitive and eas...
6. Andromeda Hyper AppleTV Converter
Andromeda Hyper AppleTV Converter is an easy and intuitive t...
7. anyTV Free
anyTV is a smart tool that enables you to watch local TV, wo...
8. FineRecovery Enterprise
FineRecovery Enterprise is a great solution to recover the d...
9. EDraw Organizational Chart
Edraw Organizational Chart is a feature-rich, powerful and s...
10. Algolab Raster to Vector Conversion Toolkit
Algolab Raster to Vector Conversion Toolkit is a powerful ve...

Software Reviews Full List



Recent Blog Posts

 
1. Google Chrome – It’s Finally Here. Will A Revolution Begin?
First, it was the rumors. Then, Google announced it official...
2. An Amazing Free Document Processing Software: LyX
The documents management task could be difficult in absence ...
3. DownloadTube Toolbar is Available For Free Download
Recently, we have made available for free download the Dow...
4. A Revolution in Web Browsing: The New Firefox 3.1b1 Already Beats All Speed Records
The latest beta1 release of Mozilla Firefox 3.1 shows majo...
5. Some Little, Nice, Freeware Tools You May Never Know When You'll Need
This time I won’t speak about a single freeware program that...
6. How To Increase The Quality of Your News Articles For Search Engine Spiders
The process of articles publishing is a common practice to...
7. Digg in Press: Tips and Opinions
Regarding Digg social bookmarking service there are many a...
8. Ubuntu Linux and Windows Can Share The Desktop In Absence Of Virtual Machines
Many people asked themselves how to run Ubuntu Linux and W...
9. 2.5 Millions Downloads for FireTune: It Makes Mozilla Firefox To Run With The Speed of Light
It is well known the fact that even the latest version of M...
10. Image Galleries on Autopilot: Instant Gallery Maker
The creation of image galleries ready for web publishing...

Last 20 Scripts

 
1. Ninja Blog
Ninja Blog is a PHP based blogging solution. Based upon word
2. Dragonfly CMS
DragonflyCMS is a content management system based on PHP-Nuk
3. Diferior
Diferior is a flexible, customizable, both user and develope
4. DBHcms
DBHcms is a search engine optimized and lightweight content
5. concrete5
concrete5 content management system could be a rapid solutio
6. bloofoxCMS
bloofoxCMS is a lightweight content management system based
7. PHP Membership
PHP Membership script allows you to add password protection
8. Tube Spider
Tube Spider allows your visitors to search videos in Youtube
9. Azure CMS
Azure CMS is a universal software product for the developmen
10. Azure Portal
Azure Portal is a social networking script made with PHP pro
11. One Frog
One Frog is a content management system that allows you to u
12. Cigmas CMS
Cigmas CMS is a powerful web content management system for g
13. WebWord CMS
WebWord CMS is a full featured web content management system
14. Marjetica Content Management System
Marjetica Content Management System is a powerful, easy to u
15. Phenotype CMS
Phenotype CMS is a PHP/MySQL - Smarty Content Application Fr
16. Chupix CMS
Chupix is a content management system written in PHP and sto
17. Interspire Website Publisher
Interspire Website Publisher (formerly ArticleLive) is a con
18. Interspire Email Marketer
Interspire Email Marketer (formerly SendStudio) is a web bas
19. Comments RAM
Comments RAM is a lightweight PHP script that allows you to
20. KoolAjax
KoolAjax facilitates data exchange between server-side and c