ZPE 프로그래밍 환경
ZPE Programming Environment![]() | |
패러다임 | 필수, 기능, 객체 지향, 절차 |
---|---|
설계자 | 제이미 밸푸어 |
개발자 | 제이미 밸푸어 |
처음 등장한 | [1] | 전(
안정된 릴리스 | 1.10.5 / 2022년 5월 5일, 전( |
타이핑 분야 | 동적, 정적, 약점, 강점, 점진적[3] |
구현 언어 | 자바, YASS |
OS | Unix급, Windows, MacOS |
파일 이름 확장자 | .zpe ,.zen ,.yex ,.zhtml ,.zhtm ,.ywp |
영향을 받다 | |
C, PHP, Java, JavaScript, VB.NET, C#.NET, SML, Python[3] |
ZPE Programming Environment(또는 단순히 ZPE)는 공식적으로 제니스 파싱 엔진은 교육용 및 일반적인 사용을 위해 설계된 YASS 언어용 범용 컴파일러, 파서 및 런타임 환경입니다.통역 언어인 YASS는 해석된 고급 범용 프로그래밍 언어입니다.YASS는 주로 언어를 쉽게 읽고 사용할 수 있도록 구축되어 있으며, 컬리브래킷 구문 등의 구문을 옵션으로 지원합니다.YASS는 동적 입력을 지원합니다.
2015년에 계획된 대학 프로젝트로 시작되었지만, 나중에 Jamie Balfour가 구축한 BlackRabbit Script로 알려진 다른 프로그래밍 언어를 대체하기 위해 변경되었습니다.ZPE 및 YASS는 다른 스크립트 언어의 [3]일관성 없는 구문을 클리어함으로써 스크립트 자동화를 지원하도록 설계되어 있습니다.Zenice Parsing Engine(구 ZeniceParser)은 CSV, JSON 및 XML 파서를 포함한 기본 파서에 전원을 공급합니다.
YASS
ZPE 런타임에 의해 해석되는 언어는 YASS 또는 Yet Another Simple [4]Syntax로 알려져 있습니다.C, PHP, Java, JavaScript, VB를 포함한 여러 언어가 YASS 구문에 영향을 주었습니다.NET, C#.버전 1.5 이후 거의 그대로인[3] NET, SML 및 Python. ZPE/YASS는 범용 프로그래밍, 클라이언트 및 서버 통신 지원 및 서버 측 스크립팅에 사용할 수 있습니다.일부 웹사이트는 이미 [5]PHP와 같은 다른 언어와 함께 ZPE를 사용하고 있습니다.
ZPE Programming Environment 자체는 Java로 작성되어 크로스 플랫폼이 됩니다.이것의 부작용은 특정 플러그인과 빌트인 오브젝트가 완전히 Java로 작성된다는 것입니다.
ZPE는 비공개 소스이지만 표준 라이브러리는 오픈 소스이며 YASS 자체에서 작성됩니다.
특징들
ZPE에는 다음과 같은 어레이의 처리를 단순화하는 함수뿐만 아니라 greater_than_all 함수, to_than_tal 함수, to_octal 함수 및 to_thinimal 함수 등의 수학적 문제를 단순화하는 함수가 포함되어 있습니다.list_process
,list_find_duplicates
그리고.list_auto_populate
또한 ZPE는 언어 프로세서 전체의 기반을 형성하고 텍스트 입력에 대한 어휘 분석과 컴파일러 최적화를 모두 수행하는 제니스 파서라고 불리는 내장 파서를 갖추고 있습니다.
ZPE 전용의 원래의 서브 사이트에는, 모든 언어 구조, 내부 기능, 언어의 [4]구문을 문서화하는 문서 섹션이 있습니다.
ZPE는 원래 계획된 대학 프로젝트로 구축되었지만 결국 실현되지 않았고, Balfour가 개발하던 BlackRabbit Script 언어를 대체하기 위해 사용되었습니다.ZPE는 원래 더하기, 빼기, 나누기 및 곱셈에 사용되는 함수를 의미하는 수학적 파서가 없었습니다.이 초기 구문의 예를 다음에 나타냅니다.
x달러 = 10 $y = 15 z달러 = 더하다(x달러, $y) 인쇄물(z달러)
2015년 후반에는 여전히 ZPE 버전 1.3.x에 Real Math Mode(RMM) 파서가 추가되었습니다.구문이 변경되어 다른 언어처럼 보입니다.
x달러 = 10 $y = 15 z달러 = x달러 + $y 인쇄물(z달러)
성능 향상을 위해 Real Math Mode 파서는 2016년에 Logical And Mathematical 파서(LAMP)로 대체되었으며, 2019년에는 Logical And Mathematical Evaluator(LAME)로 대체되었습니다.[6]
또한 ZPE와 YASS는 같은 스크립트에서 강력한 타이핑과 약한 타이핑의 혼재도 지원합니다.
x달러 = 10 선언하다 y ~하듯이 번호 = 10 인쇄물(x달러) 인쇄물(y)
라이브러리
ZPE/YASS는 기능을 확장하기 위해 개발된 라이브러리에 의존합니다.그 주된 이유는 메인 런타임 패키지의 크기를 줄이기 위해서입니다.일부 라이브러리는 YASS 언어 자체에서 작성된 후 컴파일됩니다.그런 다음 [6]2018년에 추가된 ZULE 네트워크를 통해 배포됩니다.
다른 라이브러리는 네이티브 Java로 작성됩니다.예를 들어 zpe_mysql 라이브러리는 원래 런타임 크기의 약 6배인 라이브러리를 사용하여 MySQL 기능을 언어에 추가하는 데 사용됩니다.
레퍼런스
- ^ "ZPE Programming Environment information". ZPE Information. Retrieved 2019-02-02.
- ^ "ZPE Changelog". ZPE Changelog. Retrieved 2022-05-11.
- ^ a b c d "What is ZPE?". ZPE Documentation. Retrieved 2019-02-02.
- ^ a b "ZPE Programming Environment documentation". ZPE Documentation. Retrieved 2019-02-02.
- ^ "About this website". About this website. Retrieved 2020-07-24.
- ^ a b "ZPE Changelog : ZPE Programming Environment Documentation :: jamiebalfour.com". ZPE Documentation. Retrieved 2019-03-10.