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

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

Serving Software Downloads in 956 Categories, Downloaded 50.234.075 Times

2E Programming Language 0.8.2

  Date Added: October 25, 2010  |  Visits: 1.666

2E Programming Language

Report Broken Link
Printer Friendly Version


Product Homepage
Download (108 downloads)



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. Whats New in This Release: - 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..

Requirements: No special requirements
Platforms: Linux
Keyword: Algebraic Syntax Code Generators Expr Language Operator Programming Programming Language Such As True
Users rating: 0/10

License: Freeware Size: 31.74 KB
USER REVIEWS
More Reviews or Write Review


2E PROGRAMMING LANGUAGE RELATED
Programming  -  NLPP-Native Language Programming Project 70
NLPP (The Native Language Programming Project) aims to permit foreign programmers to program using commands (such as if) in their own language (such as 'si' for Spanish). We also aim to create an easily extensible program so that programmers all...
328.15 KB  
Advanced HTML Editors  -  Free Webeditor 1.5
Free Webeditor is a Freeware HTML editor application that has advanced features such as autocomplete for HTML and Javascript, syntax coloring, tag inspector. It also has many wizards such as framesets wizard, cascading style sheets (css) wizard...
8.1 MB  
Development Tools  -  FreeBASIC 0.18.5b 1.0
FreeBASIC is a  32-bit BASIC compiler, with syntax similar to MS-QuickBASIC, that adds new features such as pointers, unsigned data types, inline assembly, object orientation, and many others.Features: - A large number of variable types available...
 
Miscellaneous Communications Tools  -  Sony Ericsson PC Companion 2.02.015
PC Companion is a software that acts as a portal to Sony Ericsson and operator features and applications, such as phone software updates, online user service connections, and the Sony Ericsson support and user guides. More applications can be...
25.8 MB  
Arcade Style Games  -  A Game Demo by The Old Game Factory rc
Fully playable Java game demo illustrating basic game programming technics, such as sprite animation, pixmap fonts, time or frame related game loop, affine transformations, convolution filters, sound generation and playback...
62.45 KB  
Business  -  Calcolo ControCodice INAIL 1.0
This useful application lets you check the code of control on the positions and the company codes of employers attributed by the Italian Welfare (is the code of two digits usually given in forms such as CC).
2.5 MB  
Text Management  -  Shell-like data processing 1.1
This module introduces an alternative syntax a-la shell pipes for sequence-oriented functions, such as filter, map, etc., via certain classes that override __ror__ method.
 
Libraries  -  Text::Macro 0.07
Text::Macro Perl module is a template facility whos focus is on generating code such as c, java or sql. While generating perl code is also possible, there is a potential conflict between the control-symbol and the perl comment symbol. Perl is...
12.29 KB  
Development Editors  -  Cedalion 0.2.6 PreAlpha
Cedalion is a programming language, different from any programming language you've encountered before. When you think about programming languages, you probably think of text files, with lines written in some syntax that has been determined by...
 
Code Management Tools  -  Jacobe Code Beautifier 7.3
Jacobe is a configurable code beautifier for the JavaTM programming language (edition 1.5). It is possible to let Jacobe print your Java code according to the widely used layout rules of Sun Microsystems or customize it to your own standards....
572 KB  
NEW DOWNLOADS IN PROGRAMMING, CODE MANAGEMENT TOOLS
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  
Code Management Tools  -  BitNami Review Board Stack 1.6.9-1 (linux)
Review Board is a powerful web-based code review tool that offers developers an easy way to handle code reviews. It scales well from small projects to large companies and offers a variety of tools to take much of the stress and time out of the...
75.97 MB  
Code Management Tools  -  Common Text Transformation Library 2.08
Common Text Transformation Library, CTTL for short, is a set of C++ classes and functions to understand and modify text data. Common Text Transformation Library implementation is based on STL classes and algorithms. Concept of a substring plays...
163.84 KB  
Code Management Tools  -  GMP compiler 1.0.0
GMP compiler tool simplifies the use of GMP, the GNU multiple precision library. It scans a C source file for specially marked GMPS arithmetic expressions and replaces them with plain C. The abbreviation gmpc stands for GMP compiler, or...
276.48 KB  
Code Management Tools  -  phpCodeGenie 3.0.2
phpCodeGenie (PCG) is a code generator for database driven applications. PCG can generate entire working basic database driven applications for you. PCG can generate code from different databases. The database servers it can talk to via ADODB...
1.4 MB  
Code Management Tools  -  idioskopos 0.4.1
idioskopos (Greek: idio- inward, within, private; -skopos look, aim, target) is a C++ library that simplifies (hopefully) the addition of object reflection and introspection. There are numerous libraries that provide object introspection, but...
604.16 KB