Main > Free Download Search >

Free for languages software for linux

for languages

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 3223
X Language 0.7.1

X Language 0.7.1


X Language is a programming language. more>>
X Language is a new multi-syntax programming including a portable set of APIs to create console or graphical applications runnable on many platforms (UNIX/X11, Win32, ...). X Language comes with an interpreter, a compiler and a debugger.
X Language is publicly available under the GPL.
Installation
- tar -xzf xlang-0.7.1.tar.gz
- cd xlang-0.7.1
- ./configure
- make
- make install
- ./xlc calc.xc
Enhancements:
- Adding LANG/MATH specifications
- Adding SYS (basic) specifications
- Start implementing the SCR API
<<less
Download (0.35MB)
Added: 2005-04-22 License: GPL (GNU General Public License) Price:
1646 downloads
V language 0.004

V language 0.004


V language is a tiny concatenative language implemented for experimentation. more>>
V language is a tiny concatenative language implemented for experimentation.
The source is under Public Domain (un-copyrighted.)
The full featured language is on top of JVM, A native version (in alpha state) is also there in the codebase.
To run it, extract the distribution in any directory and do #gmake run.
gmake
gmake run
V
|
The language is a close relative of postscript, forth and joy. and is stack based. ie:
|2 3 *
=6
|2 3 * 5 +
=11
See status for a tutorial and more info.
The Functions available in V are available in this page: functions
(The releases are out of date and multiple fixes have gone in. Please check out and build rather than use them.)
Example functions in V. getting the roots (with out using the stack shuffling word view)
[quad-formula
[a b c] let
[minisub 0 b -].
[radical b b * 4 a * c * - sqrt].
[divisor 2 a *].
[root1 minisub radical + divisor /].
[root2 minisub radical - divisor /].
root1 root2
].
|2 4 -30 quad-formula ??
=(-5.0 3.0)
using view
[quad-root
[a b c : [0 b - b b * 4 a * c * - sqrt + 2 a * /]] view i
].
|2 4 -30 quad-root ??
=(3)
contrast this with the definition in scheme here
(define quadratic-formula
(lambda (a b c)
(let ([minusb (- 0 b)]
[radical (sqrt (- (* b b) (* 4 ( * a c))))]
[divisor (* 2 a)] )
let ([root1 (/ (+ minusb radical) divisor)]
[root2 (/ (- minusb radical) divisor)])
(cons root1 root2)))))
Definition of Qsort.
[qsort
#definitions
[joinparts [pivot [*list1] [*list2] : [*list1 pivot *list2]] view].
[split_on_first_element uncons [>] split&].
#args starts for binrec. notice that 2 arguments (termination condition
#and its result) are on first line.
[small?] []
[split_on_first_element]
#binrec recurses on the result of split_on_first_element before applying joinparts.
[joinparts]
binrec].
Some explanations.
The first and second lines (terminated by .) are internal function definitions
(Notice how qsort is also terminated by .) . is the definition syntax in V.
The first function joinparts
============================
The function joinpart contains just an application of the operator view.
view is list translator. It takes a list of the form [template : result]
then it tries to apply the template to the current stack. If it can be applied on the
stack, then the arguments named in the template are bound to values in stack. The result is then processed, and all the bound elements in result are replaced by their values.
[pivot [*list1] [*list2] : [*list1 pivot *list2]] view expects 3 arguments on the stack,
the first a single element pivot, then two lists list1 and list2.
It returns a list that is composed of elements of list1 followed by pivot
followed by elements of list2 (as defined in result - RHS of :).
ie:
44 [1 2 3] [5 6 7] [pivot [*list1] [*list2] : [*list1 pivot *list2]] view ??
=> [1 2 3 44 5 6 7]
(The function ?? is used to print out the elements in the stack now.)
The second function split_on_first_element
==========================================
The definition is [uncons [>] split&]
The uncons splits a list into the first element and the rest of the list.
ie:
[1 2 3 4 5] uncons ??
=1 [2 3 4 5]
split& takes two arguments, the first is the function F to split a list with,
and the second the list itself. All elements in the list that passes the function F
is put into the first list, and all that do not are put into the second list.
ie:
[1 2 3 4 5 6 7] [4 >] split& ??
=[5 6 7] [1 2 3 4]
The function F can also take an argument from the stack. so this also works.
4 [1 2 3 4 5 6 7] [>] split& ??
=[5 6 7] [1 2 3 4]
Thus the split_on_first_element takes the first element of a list, and split that
list based on that element as a filter.
binrec
=======
binrec expects 4 arguments,
Arg1 is the terminating condition,
Arg2 is the result if the terminating condition is met.
Arg3 is an executable statement that returns two entities.
The entire binrec statement is performed on each of the
two entities until the terminating condition is met.
Arg4 is what to do with the result of the previous statement.
Algorithm.
Here, the small? checks if the list is empty or contains just one element.
if it is, then the result is arg2 - []
ie:
[] small? ??
=true
[1] small? ??
=true
[1 2 3 4] small? ??
=false
split_on_first_element takes is executed on all lists that are larger than size 1
and as explained above, splits them into two based on the first element.
on the resultent lists, the entire qsort is performed again due to binrec.
The last joinparts takes these elements (pivot list1 list2) which are present now
on the stack, and combines them to produce a single sorted list.
A slightly friendlier function (with out the binrec.)
[qsort
[joinparts [pivot [*list1] [*list2] : [*list1 pivot *list2]] view].
[split_on_first_element uncons [>] split&].
[small?]
[]
[split_on_first_element [list1 list2 : [list1 qsort list2 qsort joinparts]] view i]
ifte].
The binrec and friends are more powerful than the explicit recursion done above, but for people new to concatenative languages, this kind of recursion may look more intuitive.
Enhancements:
- The language has become relatively stable.
- Lots of bugfixes were made in scope handling.
- Tree operations were added.
- Generic combinators were moved out into a separate library.
<<less
Download (0.10MB)
Added: 2007-07-25 License: MIT/X Consortium License Price:
824 downloads
Fawlty Language 0.70

Fawlty Language 0.70


Fawlty Language is an array-oriented interactive programming language for scientific data processing and visualization. more>>
. Its syntax is almost identical to that of the Interactive Data Language (IDL).
Main features:
- all language elements are supported
- multithreaded operators
- array operations use MMX/SSE/SSE2, if available
- module profiling
- line profiling
- about 300 library functions (more or less usable)
- true-color (24 bit) direct graphics devices: X, WIN, PS, PDF, Z
- run-time performance: for many programs, FL is faster than IDL (eg. the empty loop is three times faster in FL :-)
Installation:
- create a directory (INSTDIR), where you want to install FL
- unpack the archive into this directory
- create an FL_DIR environment variable, which points to INSTDIR/fl/fl_0.61
- run FL_DIR/bin/fl
Enhancements:
- This release introduces Distributed FL, and can be started as a TCP/IP daemon (Linux only), waiting for requests from other hosts (masters) and working for them as a slave.
<<less
Download (3.5MB)
Added: 2007-06-14 License: Free To Use But Restricted Price:
866 downloads
Open Dice Language 1.5

Open Dice Language 1.5


Open Dice Language project is a language for describing dice rolls. more>>
Open Dice Language project is a language for describing dice rolls.

Open Dice Language is a language for describing dice rolls.

The language is nearly identical to what you see in most role-playing game texts (e.g., "1d20"). It provides several interfaces to the language.

To run in CLI interface mode:

# pushd $ODL_HOME
# java -jar ODL.jar

To run as Widget:

build using `ant widget`
widget is now installed in users widget directory

<<less
Download (0.49MB)
Added: 2007-01-08 License: BSD License Price:
1019 downloads
Plone Language Tool 1.5

Plone Language Tool 1.5


Plone Language Tool is a product which allows you to set the available languages in your Plone site. more>>
Plone Language Tool is a product which allows you to set the available languages in your Plone site.
PloneLanguageTool allows you to set the available languages in your Plone site, select various fallback mechanisms, and control the use of flags for language selection and translations.
When installed, a new Plone control panel action will allow you to select various language options, such as the default and list of allowed languages.
PloneLanguageTool is shipped with Plone beginning in version 2.1 and up.
Enhancements:
- Bug fix release included in Plone 2.5.2.
<<less
Download (0.10MB)
Added: 2007-03-28 License: GPL (GNU General Public License) Price:
942 downloads
MetaTrans::Languages 1.04

MetaTrans::Languages 1.04


MetaTrans::Languages Perl module contains a simple database of most of the known languages. more>>
MetaTrans::Languages Perl module contains a simple "database" of most of the known languages. Extracted from MARC codes for languages, http://www.loc.gov/marc/languages/.

SYNOPSIS

use MetaTrans::Languages qw(get_lang_by_code get_code_by_lang);

print get_lang_by_code(afr); # prints Afrikaans
print get_code_by_lang(Afrikaans); # prints afr

FUNCTIONS

get_lang_by_code($code)

Returns the name of the language with $code or undef if no language with such a $code is known.

get_code_by_lang($language)

Returns the code of the $language or undef if the language is unknown.

is_known_lang($code)

Returns true if the language with $code exists in the "database", false otherwise.

get_langs_hash

Returns the {code_1 => language_1, code_2 => language_2, ...} hash containing all known languages and their codes.

get_langs_hash_rev

Returns the {language_1 => code_1, language_2 => code_2, ...} hash containing all known languages and their codes.

<<less
Download (0.032MB)
Added: 2007-06-01 License: Perl Artistic License Price:
875 downloads
The Complex Language 0.1

The Complex Language 0.1


The Complex Language project is an object oriented programming language intended for scripting or rapid apps prototyping. more>>
The Complex Language project is an object oriented programming language intended for scripting or rapid prototyping of applications.
The design goals were to have very few simple but powerful concepts and to be easy to use and easy to learn. The project provides a working interpreter along with a complete specification of the language.
Enhancements:
- This is the first release of the specification and the corresponding interpreter.
- The corresponding library is very poor, and there are probably still bugs in the interpreter.
<<less
Download (0.13MB)
Added: 2007-07-02 License: GPL (GNU General Public License) Price:
844 downloads
The Frink Language 2007-08-04

The Frink Language 2007-08-04


The Frink Language is a calculating tool and programming language. more>>
Frink is a practical calculating tool and programming language designed to help us all to better understand the world around us, to help us get calculations right without getting bogged down in the mechanics, and to make a tool thats really useful in the real world.
Perhaps youll get the best idea of what Frink can do if you skip down to the Sample Calculations further on this document. Come back up to the top when youre done.
Frink language was named after one of my personal heroes, and great scientists of our time, the brilliant Professor John Frink.
Main features:
- Tracks units of measure (feet, meters, tons, dollars, watts, etc.) through all calculations and allows you to add, subtract, multiply, and divide them effortlessly, and makes sure the answer comes out correct, even if you mix units like gallons and liters.
- Arbitrary-precision math, including huge integers and floating-point numbers, rational numbers (that is, fractions like 1/3 are kept without loss of precision,) and complex numbers.
- Advanced mathematical functions including trigonometric functions (even for complex numbers,) factoring and primality testing, and base conversions.
- Unit Conversion between thousands of unit types with a huge built-in data file.
- Date/time math (add offsets to dates, find out intervals between times,) timezone conversions, and user-modifiable date formats.
- Translates between several human languages, including English, French, German, Spanish, Portuguese, Dutch, Korean, Japanese, Russian, Chinese, Swedish, and Arabic.
- Calculates historical buying power of the U.S. dollar and British pound.
- Calculates exchange rates between most of the worlds currencies.
- Powerful Perl-like regular expression capabilities and text processing.
- Supports Unicode throughout, allowing processing of almost all of the worlds languages.
- Reads HTTP and FTP-based URLs as easily as reading local files, allowing fetching of live web-based data.
- Runs on most major operating systems (anything with Java 1.1 or later,) as an applet, through a web-based interface, on a wireless Palm VII, on an HDML- or WML-based webphone, and on many mobile phones and hand-held devices.
- Installs itself on your system in seconds using Java Web Start and automatically keeps itself updated when new versions of Frink are released.
- Runs with a Graphical User Interface (both Swing and AWT) or a command-line interface.
- User interface has a Programming Mode which allows you to write, edit, save, and run extremely powerful programs even on a handheld device.
- Powers Frink Server Pages, a system for providing dynamic web pages powered by Frink.
- Frink is a full-fledged programming language with arrays, dictionaries, functions, loops, even object-oriented programming and self-evaluation.
- Frink allows Object-Oriented Programming, which allows you to create complex data structures that are still easy to use.
- Java Introspection layer allows you to call any Java code from within Frink.
- Frink can also be embedded in a Java program, giving your Java programs all the power of Frink.
- Did I mention its free? If you find it useful, please donate something. Id really appreciate it!
Enhancements:
- This release fixes a problem in break statements that might lead to a "Break statement used outside a loop" error.
<<less
Download (0.63MB)
Added: 2007-08-06 License: Other/Proprietary License Price:
809 downloads
Mozilla Afrikaans Language Pack

Mozilla Afrikaans Language Pack


Mozilla Afrikaans Language Pack is an Afrikaans translation of the Mozilla Web browser suite. more>>
The Mozilla Afrikaans Language Pack provides translations of the Mozilla suites Web browser, email program, and editor into Afrikaans.

All functions, errors, menus, and buttons are translated into Afrikaans.
<<less
Download (0.48MB)
Added: 2005-04-15 License: MPL (Mozilla Public License) Price:
1656 downloads
Felix Programming Language 1.1.1

Felix Programming Language 1.1.1


Felix Programming Language is a high performance, statically typed scripting language. more>>
Felix is an advanced Algol like procedural programming language with a strong functional subsystem. It features ML style typing, first class functions, pattern matching, garabge collection, polymorphism, and has built in support for high performance microthreading, regular expressions and context free parsing.

The system provides a scripting harness so the language can be used like other scripting languages, but underneath it generates native code to obtain high performance.

A key feature of the system is that it uses the C++ object model, and provides an advanced binding sublanguage to support integration with C++ at both the source and object levels, both for embedding C++ data types and functions into Felix, and for embedding Felix into exitsing C++ architectures.

The Felix compiler is written in Objective Caml, and generates ISO C++ which should compile on any platform.

<<less
Download (1.2MB)
Added: 2005-09-27 License: Freely Distributable Price:
1487 downloads
HTML Redemption Language 0.5

HTML Redemption Language 0.5


HTML Redemption Language, or HRL for short, is an HTML-preprocessor. more>>
HTML Redemption Language, or HRL for short, is an HTML-preprocessor. Its basically a macro package, with built-in Python scripting.

It redeems HTML by adding useful tags such as < include >, < macro >, < if >, and < python >. The last tag allows the web site designer to embed Python "scriptlets" in the HRL source to perform complex preprocessing tasks.

HRL is a preprocessor, designed to be invoked manually by the user to generate the web site. It is not fast enough to generate web pages on the fly. A comparable package is hsc.
<<less
Download (0.034MB)
Added: 2006-11-16 License: GPL (GNU General Public License) Price:
1072 downloads
2E Programming Language 0.8.2

2E Programming Language 0.8.2


2E Programming Language is a simple algebraic syntax language. more>>
2E Programming Language (two es, as in ee, or expression evaluator) is a simple algebraic syntax language. It natively supports expressions (composed of operators and operands), and function definitions, and basically nothing else. Therefore, it can be fairly straight-forward to learn (assuming you are already familiar with general programming constructs).
The language itself is refered to as 2e, however the interpreter is called ee.
An operand can be a literal, such as a numeric value (integer or floating point), a quoted string, a single-quoted character, a variable or a function call. Operators consist of the standard algebraic operators (i.e., *, /, +, -), assignment ("="), logical operators (, =, ==), sub-expression join operator (";"), and a conditional operator pair ("? :") like in C. Also added, is an iterative conditional pair ("?? :").
Heres a couple of examples:
ee -p 2 + 3 * 7
23
In this case, when called with the "-p" flag, the next parameter is evaluated and the final result printed. The "-c" flag does the same thing, but doesnt print the final result (use this when the expression already contains output statements).
ee -c x = 7; y = 11; z = (x * y); print(z; "n")
77
The ";" operator isnt really a statement terminator, it is actually a join operator. It evaluates the left and right expressions, and returns the result of the right hand side. It has the lowest order of precedence, so in general use you can treat it like a statement terminator (however it can be used in the middle of a larger expression, such as within parentheses grouping). It also does double-duty as a function parameter delimeter, such as the print function in the previous example.
The way that the "?" (conditoinal) operator works is as follows:
result = expr_test ? expr_true : expr_false
If expr_test is true (non-zero), then expr_true is evaluated and returned, otherwise expr_false is evaluated and returned. This is just like the inline conditional in C.
Also supported, is the iterative conditional:
result = expr_test ?? expr_true : expr_false
This will evaluate expr_test repeatedly, and as long as it is true, will evaluate expr_true. Once expr_test becomes false, then the final expr_true value is returned as the result of the whole expression. However, if expr_test never was true to begin with, then and only then is expr_false evaluated and returned. Therefore, expr_false can be used for some error handling, for example.
If an operator of lower precedence than ? or ?? is encounterd such as the ";" (join) operator, then a default false target will automatically be assumed. Therefore,
result = expr_test ? expr_true : 0; ...
result = expr_test ? expr_true; ...
are both the same. Heres a more extensive example, highlighting a few more of the operands avaliable. This example also calls the interpreter using the unix "#!" syntax, same as what is used for other scripting languages.
#!/usr/local/bin/ee
# This is a comment
i = 0;
x = 0;
i < 10 ?? ( # Read this as "while i is less than 10"
j = 0;
j < 5 ?? ( # while j < 5
array[i][j] = x; # here we are assigning a value to a 2-dimentional array
j++;
x++
);
i++
)
This example uses the iterative conditional operator to initialize an array. Notice the missing ";" after x++ and i++. this is because they are not followed by an operand (instead, in this case are followed by a closing parenthese). The ";" operator is a binary operator, no different than +, -, *, /, etc. Therefore, it is only used between to operands or two sub-expressions.
Enhancements:
- This release adds a bunch of functions to round out the string handling capabilities of 2e.
- Also added are "anonymous" functions, bitwise operators, and a few code cleanups.
<<less
Download (0.031MB)
Added: 2006-12-26 License: GPL (GNU General Public License) Price:
1032 downloads
Apache::Language 0.14

Apache::Language 0.14


Apache::Language is a Perl transparent language support for Apache modules and mod_perl scripts. more>>
Apache::Language is a Perl transparent language support for Apache modules and mod_perl scripts.

SYNOPSIS

In YourModule.pm:

sub handler {
my $r = shift;
use Apache::Language;
my $lang = Apache::Language->new($extra_args);
#$lang is now a hash ref that will automacigally pick the right language

print $lang->{Error01} if exists $lang->{Error01};

foreach ( keys %$lang ){
print "$_ is " . $lang->{$_};
}

[...]
}

The goal of this module is to provide a simple way for mod_perl module writers to include support for multiple language requests.

This is version 0.03, and its a complete rewrite from the ground-up of the previous release. Its still backward-compatible with the other releases, but now its much more advanced.

An Apache::Language object acts like a language-aware hash. It stores key/language/values triplets. Using the Accept-Language: field sent by the web-client, it can pick the best fit language for that specific client. Its usage is transparent and should prove to be quite convenient (and hopefully, efficient).

The method used to store/fetch information is now completely modular and will allow easy creation of new storage methods thru a simple API (see the API section).

<<less
Download (0.015MB)
Added: 2006-10-12 License: Perl Artistic License Price:
1108 downloads
The Language Machine 0.2.3

The Language Machine 0.2.3


The Language Machine is a free software toolkit for language and grammar. more>>
The Language Machine is a free software toolkit for language and grammar. It includes a shared library, a main program, and several metalanguage compilers with one frontend. The system is easy to use on its own or as a component.
The Language Machine directly implements unrestricted rule-based grammars with actions and external interfaces. A unique diagram shows rulesets in action.
Main features:
- rules describe how to recognise and transform grammatical input
- the left-side of a rule describes a pattern
- the right-side of a rule describes how the pattern is treated
- the left- and right- sides are unrestricted pattern generators
- the system is a kind of symbolic engine for grammar
- the metalanguage is very simple and very concise
- multiple grammars, rule priorities, left-recursion, right-recursion ...
- variables and associative arrays, a subset of javascript
- transformed representations can include actions and side-effects
- transformed representations can themselves be analysed as input
- can be used as a free-standing engine or as a shared library
- can be packaged together with precompiled rules
- very simple interface to external procedures in C and D languages
- built-in diagnostics with lm-diagram generator
- several self-hosted metalanguage compilers with a single front end
- compiled rules can be wrapped as shell scripts, or as C or D programs
- rules can be compiled to C or D code
- metalanguage source can be treated as wiki text in the Mediawiki format
Enhancements:
- modifications for compatibility with gdc-0.22 and dmd-1.010
- element.d - wrong indices to non-keyword array literal cells
- add src/dmd/Makefile for building with dmd compiler
<<less
Download (1.3MB)
Added: 2007-06-05 License: GPL (GNU General Public License) Price:
874 downloads
Translate! (multi-language) 1.0

Translate! (multi-language) 1.0


Translate! (multi-language) is a Google-based, over-the-network translation desktop widget. more>>
Translate! (multi-language) is a Google-based, over-the-network translation desktop widget.

It automatically supports all languages translate.google.com supports as of the moment you start the widget.

(Double-)Click the Wrench button on the middle to chose the language pair.

<<less
Download (0.014MB)
Added: 2007-04-06 License: GPL (GNU General Public License) Price:
935 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5