ELI(프로그래밍 언어)
ELI (programming language)![]() | 이 글에는 여러 가지 문제가 있다.이 문제를 개선하거나 대화 페이지에서 토의하십시오.(이러한 템플릿 메시지를 제거하는 방법 및 시기 알아보기) |
패러다임 | 배열하다 |
---|---|
설계자 | 와이미칭 |
개발자 | 한펑첸[2] (래피드소프트) |
첫 등장 | 2011; | 전(
안정적 해제 | 0.3 / 2015년 8월 10일; 전 |
타이핑 규율 | 동적인 |
구현 언어 | C++, Qt |
플랫폼 | IA-32, x86-64 |
OS | 크로스 플랫폼: Windows, Linux, MacOS |
면허증 | 프리웨어 |
파일 이름 확장명 | .esf .eli |
웹사이트 | fastarray |
영향을 받은 | |
APL, Q |
ELI는[3] 프로그래밍 언어를 기반으로 하는 인터랙티브 어레이 프로그래밍 언어 시스템이다.APL. 국제표준화기구(ISO) APL 표준 ISO/IEC 13751:2001의 대부분의 기능을 가지고 있으며, 동종 또는 직사각형이 아닌 데이터, 복잡한 숫자, 기호, 시간 데이터, 제어 구조에 대한 목록도 가지고 있다.프로그램을 사용하는 것과 유사한 방식으로 구성할 수 있는 스크립팅 파일 기능#include
편리한 데이터 입력/출력 기능을 제공하는 C.ELI는 사전, 테이블 및 SQL과 같은 기본적인 문 세트를 가지고 있다.성능을 위해 평면 배열 프로그램으로 제한된 컴파일러를 가지고 있다.
ELI는 각 ACPL 문자를 하나 또는 두 개의 ASCII 문자로 대체하여 MATLAB 또는 Python과 비교했을 때 APL의 간결하고 표현적인 배열 프로그래밍 방식을 유지함으로써 한 작업의 출력이 다른 연산자의 입력을 공급하는 데이터 흐름 프로그래밍 스타일을 장려한다.
ELI는 윈도, 리눅스, 맥OS에서 무료로 이용할 수 있다.
버전 0.3
안정적 출시로 묘사된 ELI 버전 0.3은 2015년 8월 10일에 발매되었다.크로스 플랫폼 IDE, ELI 스튜디오와 통합되어 ELI 코드를 작성하고 로딩할 수 있는 특화된 기능을 가진 코드 편집기를 제공한다.기능, 변수, 라이브러리, 명령 이력을 모니터링하기 위해 3개의 추가된 위젯이 사용된다.
버전 0.3에는 몇 가지 새로운 기능이 추가된다.[4]
- 종류: 문자열 일치
- 매치
- []PP: 인쇄정밀관리
- )시간: 성능 측정
- [] : 표준입력
- 날짜 및 시간 속성
- 파일 핸들: []열기, []닫기, []쓰기, [] 가져오기
- 세미콜론(;)
예시 코드
ELI의 라인은 오른쪽에서 왼쪽으로 작업 연쇄로 실행된다. '/'의 오른쪽에 있는 것은 모두 코멘트다.
느낌표(!)는 간격 함수다.1부터 n까지의 n 정수의 벡터를 생성할 수 있다.
!10 1 2 3 4 5 6 7 8 9 10
ELI의 실행 순서는 오른쪽에서 왼쪽까지이며, 모든 원시 함수의 우선 순위는 같다.
5 * 2 + 10 // 오른쪽에서 왼쪽으로, 5 * (2 + 10) 60
다음 예에서 함수add
짧은 함수 형태로 선언된다.함수의 인수는 스칼라 또는 벡터일 수 있다.
{add: x+y} // 짧은 함수 형식 1 추가 2 // 1+2 3 1 추가 !10 // 1+(1..10) 2 3 4 5 6 7 8 9 10 11
그$
회전 연산자는 벡터의 역순을 반환한다.
$!10 // 후진 10 9 8 7 6 5 4 3 2 1
2x3 매트릭스(또는 더 높은 차원 배열, 예:2 3 4#!24
) 생성 가능#
좌론하고2 3
.
2 3#!6 // 2 차원 어레이(하이브리드) 1 2 3 4 5 6
아래 첫 번째 줄에x
1에서 20까지의 벡터가 할당된다.그러면.1 = 2 x
홀수를 반환하다True
짝수False
. The/
값을 선택하는 압축의 원시 함수x
에 상응하는True
그것의 왼쪽 논거에 있는 가치들
x <- !20 // 1..20 x 1 3 4 4 7 8 9 10 12 14 15 16 16 18 19 20 (1 = 2 x) / x // x 1 3 5 7 7 11 13 15 17 19에서 홀수 숫자 가져오기
파일 확장명
ELI에서는 서로 다른 목적으로 코드를 교환하고 공유하기 위해 두 개의 파일 확장자를 사용한다..esf
그리고.eli
.
확장명이 있는 ELI 파일.esf
모든 방법과 데이터를 포함하는 스크립트 파일이다.스크립트 파일을 만드는 간단한 방법은 명령을 사용하는 것이다.)out
그러나 스크립트 파일을 생성하려면 디버깅이나 오류 정보가 남아 있지 않은 깨끗한 작업 공간이 필요하다.나중에 명령어)fload
스크립트 파일을 다시 로드하는 데 사용할 수 있다.
)out MyScript )lib MyScript.esf )fload MyScript는 2017.02.17 10:23:55(gmt-5) 저장됨
확장명이 있는 ELI 파일.eli
작업영역의 모든 것을 포함하는 ELI 작업영역 파일이다. save
그리고load
작업영역 파일에 대한 명령이다.
)save MyWorkspace )load MyWorkspace 2017.02.17 10:57:19 (gmt-5)
참조
- ^ ELI: 어레이 프로그래밍을 위한 간단한 시스템
- ^ ELI - McGill University의 Sable 연구실의 미러 사이트
- ^ ELI - Google App Engine에서 호스팅되는 공식 사이트
- ^ Chen, Hanfeng (2015). "Overview". ELI, a System for Programming with Arrays. Fastarray.appspot.com. Retrieved 26 February 2018.