To install click the Add extension button. That's it.

The source code for the WIKI 2 extension is being checked by specialists of the Mozilla Foundation, Google, and Apple. You could also do it yourself at any point in time.

4,5
Kelly Slayton
Congratulations on this excellent venture… what a great idea!
Alexander Grigorievskiy
I use WIKI 2 every day and almost forgot how the original Wikipedia looks like.
Live Statistics
English Articles
Improved in 24 Hours
Added in 24 Hours
What we do. Every page goes through several hundred of perfecting techniques; in live mode. Quite the same Wikipedia. Just better.
.
Leo
Newton
Brights
Milds

ELI (programming language)

From Wikipedia, the free encyclopedia

ELI[1]
Paradigmarray
Designed byWai-Mee Ching
DeveloperHanfeng Chen[2] (Rapidsoft)
First appeared2011; 12 years ago (2011)
Stable release
0.3 / August 10, 2015; 8 years ago (2015-08-10)
Typing disciplinedynamic
Implementation languageC++, Qt
PlatformIA-32, x86-64
OSCross-platform: Windows, Linux, macOS
LicenseFreeware
Filename extensions.esf .eli
Websitefastarray.appspot.com
Influenced by
APL, Q

ELI[3] is an interactive array programming language system based on the programming language APL. It has most of the functions of the International Organization for Standardization (ISO) APL standard ISO/IEC 13751:2001, and also list for non-homogeneous or non-rectangular data, complex numbers, symbols, temporal data, and control structures. A scripting file facility is available to organize programs in a fashion similar to using #include in C, which also provides convenient data input/output. ELI has dictionaries, tables, and a basic set of SQL-like statements. For performance, it has a compiler restricted to flat array programs.

By replacing each APL character with one or two ASCII characters, ELI retains APL's succinct and expressive way of array programming compared with MATLAB or Python, ELI encourages a dataflow programming style, where the output of one operation feeds the input of another.

ELI is available without charge, as freeware, on Windows, Linux, and macOS.

YouTube Encyclopedic

  • 1/4
    Views:
    312
    1 635
    321
    2 931
  • Eli Barzilay Teaches Programming Languages
  • Naming conventions in programming #shorts #programming
  • EU Datathon 2018 - Challenge 2 (ELI - European Legislation Identifier)
  • Top 10 Programming Languages For Game Development 2022 |Best Game Development Languages | InsideAIML

Transcription

Version 0.3

ELI version 0.3, described as a stable release, was released on August 10, 2015. It integrates with a cross-platform IDE, ELI Studio, which provides a code editor with specialized functions to write and load ELI code. Three added widgets are used to monitor functions, variables, libraries and command history.

Version 0.3 adds several new features.[4]

  • Like: string match
  • Match
  • []PP: printing precision control
  • )time: performance measure
  • []: standard input
  • Date and time attributes
  • File handle: []open, []close, []write, and []get
  • Semicolon (;)

Example code

A line of ELI executes from right to left as a chain of operations; anything to the right of ‘//’ is a comment.

Exclamation point (!) is an interval function. It can generate a vector of n integer from 1 to n.

      !10
1 2 3 4 5 6 7 8 9 10

The execution order of ELI is from right to left, and all primitive functions have equal precedence.

      5 * 2 + 10 // from right to left, 5 * (2 + 10)
60

In the next example a function add is declared in a short function form. The arguments of the function can be either a scalar or a vector.

      {add: x+y} // short function form
add
      1 add 2    // 1+2
3
      1 add !10  // 1+(1..10)
2 3 4 5 6 7 8 9 10 11

The $ rotation operator returns the reverse order of a vector.

      $!10       // reverse
10 9 8 7 6 5 4 3 2 1

A 2-by-3 matrix (or higher dimension array, e.g., 2 3 4#!24) can be generated by # with left argument 2 3.

      2 3#!6     // 2 dimension array (matrix)
1 2 3
4 5 6

In first line below the x is assigned with a vector from 1 to 20. Then, 1 = 2|x returns odd number True and even number False. The / is a primitive function for compression which picks up the value in x corresponding to the True values in its left argument.

      x <- !20   // 1..20
      x
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
      (1 = 2|x) / x  // get odd numbers from x
1 3 5 7 9 11 13 15 17 19

File extensions

Two file extensions are used in ELI for exchanging and sharing code for different purposes: .esf and .eli.

An ELI file with extension .esf is a script file which contains all methods and data. A simple way to create a script file is using the command )out. However, a clean workspace with no debugging or error information left is needed before a script file can be created. Later the command )fload can be used to reload the script file.

      )out MyScript
      )lib
MyScript.esf
      )fload MyScript
saved 2017.02.17 10:23:55 (gmt-5)

An ELI file with extension .eli is an ELI workspace file which contains everything in a workspace. save and load are commands for workspace files.

      )save MyWorkspace
      )load MyWorkspace
saved 2017.02.17 10:57:19 (gmt-5)

References

  1. ^ ELI: a simple system for array programming
  2. ^ ELI - mirror site in the Sable lab at McGill University
  3. ^ "ELI: A System for Programming with Arrays". Disqus.
  4. ^ Chen, Hanfeng (2015). "Overview". ELI, a System for Programming with Arrays. Fastarray.appspot.com. Retrieved 26 February 2018.

External links

This page was last edited on 3 May 2023, at 06:44
Basis of this page is in Wikipedia. Text is available under the CC BY-SA 3.0 Unported License. Non-text media are available under their specified licenses. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc. WIKI 2 is an independent company and has no affiliation with Wikimedia Foundation.