모듈라-3
모듈라-3(Modula-3)는 모듈라-2+로 알려진 모듈라-2 업그레이드판의 뒤를 잇는 프로그래밍 언어이다. 자바, C 샤프, 파이썬 등 언어 디자인에 영향을 준 연구단체들에 영향을 주고 있으나 산업에 크게 채택되지는 않고 있다. 루카 카델리, James Donahue, Lucille Glassman, Mick Jordan, Bill Kalsow, Greg Nelson이 1980년대 말에 설계했다.
패러다임 | 명령형, 구조적, 절차적, 모듈성, 병행 |
---|---|
계열 | 니클라우스 비르트 모듈라 |
설계자 | Luca Cardelli, James Donahue, Lucille Glassman, Mick Jordan; Bill Kalsow, Greg Nelson |
개발자 | DEC Olivetti elego Software Solutions GmbH |
발표일 | 1988년 |
최근 버전 | 5.8.6 |
최근 버전 출시일 | 2010년 7월 14일 |
미리보기 버전 | 5.8.6 |
미리보기 버전 출시일 | 2010년 7월 14일 |
자료형 체계 | 스트롱, 정적, 안전 |
변수 영역 | 변수 범위 |
플랫폼 | IA-32, x86-64, PowerPC, SPARC |
운영 체제 | 크로스 플랫폼: FreeBSD, 리눅스, Darwin, SunOS |
웹사이트 | www |
주요 구현체 | |
SRC Modula-3, CM3,[1] PM3,[2] EZM3,[3] M3/PC Klagenfurt[4] | |
영향을 받은 언어 | |
ALGOL, Euclid, Mesa, Modula-2, Modula-2+, Oberon, Pascal | |
영향을 준 언어 | |
C#, 자바, Nim,[5] OCaml, Rust,[6] 파이썬[7] |
모듈라-3의 주된 기능은 시스템 프로그래밍 언어의 힘을 그대로 유지하는 단순성과 안전이다.
문법
편집"Hello, World!" 프로그램 예시는 다음과 같다.
MODULE Main;
IMPORT IO;
BEGIN
IO.Put("Hello World\n")
END Main.
각주
편집- ↑ “Critical Mass Modula-3 (CM3)”. 《Critical Mass Modula-3》. elego Software Solutions GmbH. 2020년 3월 21일에 확인함.
- ↑ “Polytechnique Montréal Modula-3 (PM3): What is it”. 《Polytechnique Montréal Modula-3》. elego Software Solutions GmbH. 2020년 3월 21일에 확인함.
- ↑ Polstra, John D. (2006년 11월 9일). “Ezm3: An Easier Modula-3 Distribution”. 《CVSup.org》. 2013년 4월 10일에 원본 문서에서 보존된 문서. 2020년 3월 21일에 확인함.
- ↑ Weich, Carsten. “M3/PC Klagenfurt 96: a Modula-3 environment for MS-DOS”. 《Department of Informatics》. University of Klagenfurt. 2000년 5월 20일에 원본 문서에서 보존된 문서. 2020년 3월 21일에 확인함.
- ↑ Picheta, Dominik; Locurcio, Hugo. “Frequently Asked Questions”. 2020년 3월 21일에 확인함.
- ↑ “R/Rust - I just learned about Modula-3, a language that had a lot of similar goals to Rust, and there was even an experimental OS that relied on the safety provided by the language”.
- ↑ van Rossum, Guido (May 1996). “Programming Python: Foreword (1st ed.)”. 《Python.org》. 2020년 3월 21일에 확인함.
외부 링크
편집- 모듈라-3 - 공식 웹사이트
- (영어) Modula3 - 깃허브
- CM3 Implementation Website
- Modula-3 Home Page (now long dead, mirror)
- Modula-3: Language definition Archived 2021년 6월 28일 - 웨이백 머신
- elego Software Solutions
- Modula-3 newsgroup, mostly deserted
- Modula-3 Development Mailing List, active
- Notes from Caltech's CS2 class, taught in Modula-3 in 2002 and 2003
- Caltech's CS3 class 2009 - 웨이백 머신 (보관됨 5월 23, 2013)
- mirror Programming in Modula-3: program examples
- Building Distributed OO Applications: Modula-3 Objects at Work. Michel R. Dagenais. Draft Version (January 1997)
- Modula-3: Language, Libraries and Tools. Presentation on Modula-3 over 120 slides. Michael R. Dagenais[깨진 링크], dead
- Object-Oriented Data Abstraction in Modula-3. Joseph Bergin (1997)
- Computerworld Interview with Luca Cardelli on Modula-3