{{위키데이터 속성 추적}}
{{Infobox programming language
| name                   = 모듈라-3<br />Modula-3
| logo                   = Modula-3.svg
| logo size              = 120px
| paradigms              = 명령형, 구조적, 절차적, 모듈성, 병행
| typing                 = 스트롱, 정적, 안전
| scope                  = [[변수 범위]]
| family                 = [[니클라우스 비르트]] [[모듈라]]
| designers              = [[루카스 카델리|Luca Cardelli]], James Donahue, Lucille Glassman, Mick Jordan; Bill Kalsow, [[그레그 넬슨|Greg Nelson]]
| developers             = [[Digital Equipment Corporation|DEC]]<br/>[[Olivetti]]<br/>{{Not a typo|elego}} Software Solutions GmbH
| released               = {{시작 날짜와 나이|1988}}
| latest release version = 5.8.6
| latest release date    = {{시작 날짜와 나이|2010|07|14}}
| latest preview version = 5.8.6
| latest preview date    = {{시작 날짜와 나이|2010|07|14}}
| implementations        = [[DEC Systems Research Center|SRC]] Modula-3, CM3,<ref>{{웹 인용|url=https://modula3.elegosoft.com/cm3/ |title=Critical Mass Modula-3 (CM3) |website=Critical Mass Modula-3 |publisher=elego Software Solutions GmbH |access-date=2020-03-21}}</ref> PM3,<ref>{{웹 인용|url=https://modula3.elegosoft.com/pm3/ |title=Polytechnique Montréal Modula-3 (PM3): What is it |author=<!--Unstated--> |date=<!--Undated--> |website=Polytechnique Montréal Modula-3 |publisher=elego Software Solutions GmbH |access-date=2020-03-21}}</ref> EZM3,<ref>{{웹 인용|url=http://www.cvsup.org/ezm3/ |title=Ezm3: An Easier Modula-3 Distribution |last=Polstra |first=John D. |date=November 9, 2006 |website=CVSup.org |url-status=dead |archive-url=https://web.archive.org/web/20130410151327/http://www.cvsup.org/ezm3/ |archive-date=April 10, 2013 |access-date=2020-03-21}}</ref> M3/PC Klagenfurt<ref>{{웹 인용|url=http://www.ifi.uni-klu.ac.at/Modula-3/m3pc/m3pc.html |title=M3/PC Klagenfurt 96: a Modula-3 environment for MS-DOS |last=Weich |first=Carsten |date=<!-- Undated. --> |website=Department of Informatics |publisher=University of Klagenfurt |url-status=dead |archive-url=https://web.archive.org/web/20000520073936/http://www.ifi.uni-klu.ac.at/Modula-3/m3pc/m3pc.html |archive-date=20 May 2000 |access-date=2020-03-21}}</ref>
| influenced by          = [[ALGOL]], [[Euclid]], [[메사 (프로그래밍 언어)|Mesa]], [[Modula-2]], [[Modula-2+]], [[오베론 (프로그래밍 언어)|Oberon]], [[파스킬 (프로그래밍 언어)|Pascal]]
| influenced             = [[C 샤프|C#]], [[자바 (프로그래밍 언어)|자바]], [[님 (프로그래밍 언어)|Nim]],<ref>{{웹 인용|url=http://nim-lang.org/question.html |title=Frequently Asked Questions |last1=Picheta |first1=Dominik |last2=Locurcio |first2=Hugo |date=<!-- Undated. --> |access-date=2020-03-21}}</ref> [[OCaml]], [[러스트 (프로그래밍 언어)|Rust]],<ref>{{웹 인용|url=https://www.reddit.com/r/rust/comments/cycjou/i_just_learned_about_modula3_a_language_that_had/|title=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 }}</ref> [[파이썬]]<ref>{{웹 인용|url=https://www.python.org/doc/essays/foreword/ |title=Programming Python: Foreword (1st ed.) |last=van Rossum |first=Guido |date=May 1996 |website=Python.org |access-date=2020-03-21}}</ref>
| platform               = [[IA-32]], [[x86-64]], [[PowerPC]], [[SPARC]]
| operating system       = [[크로스 플랫폼]]: [[FreeBSD]], [[리눅스]], [[다윈 (운영 체제)|Darwin]], [[SunOS]]
| website                = {{URL|www.modula3.org}}
}}
'''모듈라-3'''(Modula-3)는 [[모듈라-2+]]로 알려진 [[모듈라-2]] 업그레이드판의 뒤를 잇는 [[프로그래밍 언어]]이다. [[자바 (프로그래밍 언어)|자바]], [[C 샤프]], [[파이썬]] 등 언어 디자인에 영향을 준 연구단체들에 영향을 주고 있으나 산업에 크게 채택되지는 않고 있다. [[루카 카델리]], James Donahue, Lucille Glassman, Mick Jordan, Bill Kalsow, Greg Nelson이 1980년대 말에 설계했다.

모듈라-3의 주된 기능은 시스템 프로그래밍 언어의 힘을 그대로 유지하는 단순성과 안전이다.

== 문법 ==
[["Hello, World!" 프로그램]] 예시는 다음과 같다.

<syntaxhighlight lang="modula3">
MODULE Main;
IMPORT IO;
BEGIN
  IO.Put("Hello World\n")
END Main.
</syntaxhighlight>

== 각주 ==
{{각주}}

== 외부 링크 ==
*{{공식 웹사이트}}
*{{GitHub|modula3|Modula3}}
* [http://www.opencm3.net CM3 Implementation Website]
* [http://www.research.compaq.com/SRC/modula-3/html/home.html Modula-3 Home Page] (now long dead, [https://web.archive.org/web/20050220025439/http://www.research.compaq.com/SRC/modula-3/html/home.html mirror])
* [http://www.hpl.hp.com/techreports/Compaq-DEC/SRC-RR-52.html Modula-3: Language definition] {{웨이백|url=http://www.hpl.hp.com/techreports/Compaq-DEC/SRC-RR-52.html |date=20210628234936 }}
* [http://www.elegosoft.com elego Software Solutions]
*[news:comp.lang.modula3 Modula-3 newsgroup], mostly deserted
* [https://web.archive.org/web/20120326171529/https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3devel Modula-3 Development Mailing List], active
* [https://web.archive.org/web/20091203151748/http://www.mikanystrom.com/cs2/ Notes from Caltech's CS2 class, taught in Modula-3 in 2002 and 2003]
*{{webarchive |url=https://web.archive.org/web/20130523220501/http://www.ugcs.caltech.edu/~se/ |date=May 23, 2013 |title=Caltech's CS3 class 2009}}
* [https://web.archive.org/web/19970814162826/http://www.ifi.uni-klu.ac.at/Modula-3/m3book/examples.html mirror ''Programming in Modula-3'': program examples]
* [https://web.archive.org/web/20120227030339/http://www.professeurs.polymtl.ca/michel.dagenais/pkg/BDAM3alpha.ps ''Building Distributed OO Applications: Modula-3 Objects at Work''. Michel R. Dagenais. Draft Version (January 1997)]
*[ftp://ftp.u-aizu.ac.jp/pub/lang/Modula/m3/faq/document/LangToolsLibs/root.ps ''Modula-3: Language, Libraries and Tools''. Presentation on Modula-3 over 120 slides. Michael R. Dagenais]{{깨진 링크|date=November 2018 |bot=InternetArchiveBot |fix-attempted=yes}}, dead
* [http://csis.pace.edu/~bergin/M3text ''Object-Oriented Data Abstraction in Modula-3''. Joseph Bergin (1997)]
* [http://www.techworld.com.au/article/252531/a-z_programming_languages_modula-3/ Computerworld Interview with Luca Cardelli on Modula-3]
{{전거 통제}}

[[분류:객체 지향 프로그래밍 언어]]
[[분류:시스템 프로그래밍 언어]]
[[분류:1988년 개발된 프로그래밍 언어]]