JVM 언어 목록

List of JVM languages

JVM 언어 목록은 Java Virtual Machine(JVM; Java 가상 머신)에서 실행되는 컴퓨터 소프트웨어를 만드는 데 사용되는 주요 컴퓨터 프로그래밍 언어로 구성됩니다.이러한 언어 중 일부는 Java 프로그램에 의해 해석되며 일부는 Java 바이트 코드로 컴파일되고 실행 중에 일반 Java 프로그램으로 JIT 컴파일되어 성능을 향상시킵니다.

JVM은 처음에 프로그래밍 언어 Java만을 지원하도록 설계되었습니다.그러나 시간이 지나면서 Java 플랫폼에서 실행되도록 조정되거나 설계된 언어가 훨씬 더 많아졌습니다.

JVM 언어

유명 언어

2022년 4월 현재 상위 100개 프로그래밍 언어의 TIOBE[1] 색인에 따르면 상위 JVM 언어는 다음과 같습니다.

기존 언어의 JVM 구현

언어 JVM 구현
골랑 jgo
Arden 구문 Arden2Byte 코드
코볼 NTT 데이터 엔터프라이즈 COBOL[4]

마이크로포커스 비주얼 COBOL[5]
가보 엘라스틱 코볼
매우 중요한 isCOBOL 진화[6]

ColdFusion Markup Language(CFML) 어도비 콜드퓨전
라일로
루세
오픈 블루드래곤
일반적인 리스프 암곰 커먼 리스프[7]
사이퍼 Neo4j[8]
하스켈 ETA(프로그래밍 언어)
자바스크립트 코뿔소
내손

그랄.js[9]

LLVM 비트코드 설롱[10]
수성. 수은(자바 등급)
OCaml OCaml-Java
컴포넌트 파스칼 가든 포인트 구성 요소 Pascal
파스칼 MIDlet Pascal
옥시진
라쿠 라쿠도
PHP 퀘르쿠스[11][12] JPHP
프롤로그 JIProlog
TuProlog
파이썬 제이슨

ZipPy[13]

그랄.피톤[9]

R 런진

패스트R[14]

렉시 넷렉스
루비 JRuby
트러플루비[15]
스킴 빅루
카와
SISC
JScheme
시뮬라 오픈 소스 시뮬레이션
스몰토크 레드라인[16]
표준 ML MLJ
TCL 쟈쿠
비주얼 베이직 자바코[note 1]

JVM을 구현한 새로운 언어

  • Ateji PX, 멀티코어[21], GPU, 그리드 및 클라우드에서 쉽게 병렬 프로그래밍할 수 있는 Java 확장판
  • Ballerina는 구조 입력, 네트워크 클라이언트 객체, 서비스, 리소스 기능 및 청취자, 워커와의 병렬 동시성, 이미지 구축, 구성 관리 및 오염 검사를 사용하는 [22]클라우드 애플리케이션을 위한 프로그래밍 언어입니다.
  • 구문이 Java에 가까운 스크립트 언어인 BeanShell
  • EPL(Event Processing Language)은 시간 설정된 이벤트 스트림의 패턴을 분석 및 검출하기 위한 도메인 고유의 데이터 조작 언어이며, 이벤트 지향 기능을 사용하여 SQL 92를 확장합니다.버전 6까지의 EPL은 대부분 Java 라이브러리에서 해석되는 언어이며 버전 7부터는 JVM 바이트 코드로 컴파일됩니다.
  • Concurnas는 신뢰성, 확장성, 고성능 동시 분산 및 병렬 시스템을 구축하기 위해 설계된 오픈 소스 JVM 프로그래밍 언어입니다.
  • Red[2] Hat의 Java 경쟁사 Seilon
  • CFML, ColdFusion Markup Language(일반적으로 CFML)는 JVM 상에서 실행되는 웹 개발용 스크립트 언어입니다.NET 프레임워크 및 Google App [23]Engine입니다.
  • Quark Framework (CAL), Haskell에서 영감을 얻은 기능적 언어
  • E-on-Java, 안전한 분산 컴퓨팅을 위한 객체 지향 프로그래밍 언어
  • 에타, 순수하고 게으르며 해스켈[24] 정신의 강력한 함수형 프로그래밍 언어
  • Fantom은 JVM, .NET Common Language Runtime(CLR) 및[25][2] JavaScript를 통해 이식 가능한 기반 언어입니다.
  • Flix1등급 데이터로그 제약 조건과 다형 효과 시스템을 갖춘 기능적, 명령적, 논리 프로그래밍 언어입니다.
  • 플로우 자바
  • 포트리스(Fortran)는 주로 병렬 과학 컴퓨팅을 위해 Sun이 Fortran의 후속으로 설계한 언어입니다.제품 개발은 Sun 구매 시 Oracle이 담당했습니다.Dobb's에 따르면 Oracle은 2012년에 개발을 중단했습니다.
  • Frege는 Haskell의[26] 정신에 따라 엄격하지 않고 순수하게 기능하는 프로그래밍 언어입니다.
  • Golo는 JVM을 위한 단순하고 역동적이며 약하게 입력된 언어이며, 현재는 Eclipse Software [27][28][29]Foundation의 육성 프로젝트인 프랑스 Institut National desciences applies de Lyong에서 개발되었습니다.
  • Gosu, Java 바이트 코드로 컴파일된 확장 가능한 유형 시스템 언어
  • Haxe는 Java와 JVM을 대상으로 하는 크로스 플랫폼 정적으로 입력된 언어입니다.
  • IokeRuby, Lisp, Smalltalk와 유사한 Io를 연상시키는 프로토타입 기반 언어입니다.
  • 젤리
  • Join-calculus 시멘틱스를 사용하여 Java를 확장하는 언어인 Join Java
  • 즐거움
  • Judoscript
  • Mirah유형 추론과 루비에서 영감을[30][31] 받은 구문을 특징으로 하는 맞춤형 언어입니다.
  • NetLogo, 멀티 에이전트 언어
  • Noop, 테스트성을 주요 초점으로 하여 구축된 언어
  • Pizza, 함수 포인터와 대수 데이터 유형있는 Java의 슈퍼셋
  • 빠쯔
  • Java와 유사한 구문을 가진 Java 기반의 시각화 및 애니메이션 언어 및 프레임워크인 프로세싱
  • Prompto. "클라우드에서 비즈니스 애플리케이션을 생성하도록 설계된" 언어입니다.클라우드에서 직접 비즈니스 애플리케이션을 설계할 수 있는 동일한 플랫폼의 일부입니다.Prompto 언어에는 Engly, Monty 및 Objy의 세 가지 "변증"이 있습니다.영어로는 "Micemics English many"와 "Monty는 Python 3 언어의 구문을 최대한 따르려고 한다"와 "OP 언어의 구문을 최대한 따르려고 한다"가 있다.세 가지 사투리가 모두 [32]서로 원활하게 번역됩니다.
  • 소스 및 타깃 언어에 의존하지 않는(파라미터화된) 메타 프로그래밍 언어인 RascalMPL
  • 와일
  • X10은 IBM이 설계한 언어로, 제한된 유형과 동시성 및 배포에[2] 중점을 두고 있습니다.
  • Xtend는 Eclipse 재단이 구축한 객체 지향, 기능필수 프로그래밍 언어로 확장 방법 및 람다에 초점을 맞춘 긴밀한 Java 상호 운용성을 특징으로 합니다.
  • ML 스타일의 함수 프로그래밍 언어인[33] Yeti
  • 개체 지향 패러다임[34]단순화하고 확장하는 것을 목적으로 하는 언어인 Yirgacheffe.
  • Yoix, 범용, 비객체 지향, 해석된 동적 프로그래밍 언어

이들 언어의 비교

언어 초판 안정된 릴리스 전회 릴리즈
발레리나 2018 2019 2020
빈셸 1999 2013 2016
이클립스 실론 2011 2017 2017
CFML 1995 2018 2018
쿼크 프레임워크 2011 2018
E 1997
판텀 2011 2017
포트리스 2006 2011 2017
프레지
미라 2016
Xtend 2011 2021

「 」를 참조해 주세요.

메모들

  1. ^ [17][18][19] 는 2009년부터 베타테스트를 실시하고 있는 프리웨어 IDE로 부분적으로 오픈소스 Jabaco 프레임워크 런타임에 대응하고 있습니다.Javaaco는 VB6 구문 소스를 Java 바이트 코드로 컴파일합니다.

레퍼런스

  1. ^ "TIOBE Index for April 2022 TIOBE - The Software Quality Company". www.tiobe.com. Retrieved 1 January 2022.
  2. ^ a b c d e f Raoul-Gabriel Urma (1 July 2014). "Alternative Languages for the JVM. A look at eight features from eight JVM languages". oracle.com. Retrieved 13 March 2019.
  3. ^ Wampler, Dean (15 January 2009). "Adopting New JVM Languages in the Enterprise (Updated)". objectmentor.com. Archived from the original on 22 May 2009. Retrieved 18 June 2009.
  4. ^ "NTT Data Enterprise COBOL Brochure" (PDF).
  5. ^ "Visual COBOL Brochure" (PDF). Retrieved 5 April 2017.
  6. ^ "isCOBOL Evolve Datasheet" (PDF). Retrieved 17 May 2019.
  7. ^ 암곰 커먼 리스프
  8. ^ "New on Neo4j: The Neo4j 2.3.0 Milestone 2 Release Is Here". 12 June 2015. Retrieved 20 February 2017.
  9. ^ a b "Oracle Labs GraalVM: Programming Languages and Runtimes Overview". www.oracle.com. Retrieved 12 April 2018.
  10. ^ "graalvm/sulong". GitHub. Retrieved 12 April 2018.
  11. ^ "Introducing Quercus, a Java based PHP". Retrieved 2 July 2015.
  12. ^ "Running PHP With Quercus in Sun Java System Web Server". Retrieved 2 July 2015.
  13. ^ "ssllab / ZipPy — Bitbucket". bitbucket.org. Retrieved 12 April 2018.
  14. ^ "oracle/fastr". GitHub. Retrieved 12 April 2018.
  15. ^ "oracle/truffleruby". GitHub. Retrieved 12 April 2018.
  16. ^ "Redline Smalltalk". Retrieved 2 September 2018.
  17. ^ "Jabaco entry at Mindteq.com Basics section". Retrieved 2 July 2015.]
  18. ^ "Article about Jabaco at German Pro-Linux publication". Retrieved 2 July 2015.]
  19. ^ "Basic meet Java". Retrieved 26 February 2015.
  20. ^ "Framework". Retrieved 26 February 2015.
  21. ^ "Ateji PX: Java Parallel Programming Made Simple". Ateji. Archived from the original on 24 February 2014. Retrieved 1 March 2014.
  22. ^ "Announcing Ballerina 1.0". Ballerina. Retrieved 8 February 2020.
  23. ^ CFML은 Java로 컴파일된 스크립트 언어이며 ColdFusion 또는 Railo 애플리케이션 서버에서 사용됩니다.
  24. ^ "The Eta Programming Language". Retrieved 10 May 2017.
  25. ^ "Fantom Programming Language". Fantom. Retrieved 1 March 2014.
  26. ^ "Frege". Retrieved 1 March 2014.
  27. ^ "Oracle.com - Golo – A Lightweight Dynamic Language for the JVM". Archived from the original on 3 July 2015. Retrieved 2 July 2015.]
  28. ^ "Golo nominated for JAX Awards 2014". Retrieved 2 July 2015.]
  29. ^ "Golo entry at JAX Awards 2014". Retrieved 2 July 2015.]
  30. ^ "The Mirah Programming Language". GitHub. Retrieved 1 March 2014.
  31. ^ "Mirah". Retrieved 1 March 2014.
  32. ^ "The Prompto Platform". Retrieved 14 September 2019.
  33. ^ "Yeti programming language". Retrieved 5 May 2020.
  34. ^ "Yirgacheffe". Retrieved 9 January 2020.