니클라우스 비르트
니클라우스 비르트(Niklaus Wirth, 1934년 2월 15일~ )는 교육용 프로그래밍 언어인 파스칼(Pascal)의 고안자이다. 파스칼 외에도 다양한 프로그래밍 언어를 설계했으며, 소프트웨어 공학의 고전적 주제들을 선도해온 스위스의 컴퓨터 과학자이다. 1984년, 그는 일련의 혁신적인 컴퓨터 언어들을 개발한 공로로 튜링상을 받았다.
생애[편집]
1934년, 니클라우스 비르트는 스위스 빈터투어에서 태어났다. 1959년, 취리히 연방 공과대학교(ETH Zürich)에서 전기공학 학사 학위를 받고, 1960년 캐나다의 라발 대학교(Université Laval)에서 이학 석사 학위를 받았다. 1963년, 캘리포니아 대학교 버클리 캠퍼스(University of California, Berkeley)에서 전기공학 및 컴퓨터 과학(EECS) 분야에서 철학박사 학위를 받았다. 졸업과 동시에, 1963년부터 1967년까지 그는 스탠퍼드 대학교(Leland Stanford Junior University)의 컴퓨터 과학과 조교수로 일했다. 1968년, 그는 취리히 연방 공과대학교에서 정보학 교수가 되었다. 그곳에서 그는 프로그래밍 언어인 파스칼(1970), 모둘라-2(1979), 오베론(1988)을 개발했다. 특히 파스칼은 컴퓨터 과학 교육에서 널리 사용되는 프로그래밍 언어가 되었고, 한 세대의 학생과 전문 프로그래머들에게 영향을 주었다. 그리고 1999년 은퇴하였다.[1]
그는 프로그래밍 언어 오일러(Euler), 알골-W(Algol W), 파스칼(Pascal), 모듈라(Modula), 모둘라-2(Modula-2), 오베론-2(Oberon-2), 오베론-07(Oberon-07)의 수석 개발자였다. 또한 릴리스와 오베론 운영체제, 롤라 디지털 하드웨어 설계 및 시뮬레이션 시스템의 설계 및 구현 팀에서 주요 역할을 담당했다. 1984년, 그는 이러한 프로그래밍 언어의 개발로 컴퓨터 기계 협회(Association for Computing Machinery) 튜링상(Turing Award)를 수상했으며, 1994년 컴퓨터 기계 협회의 펠로우로 임명되었다.[2]
경력[편집]
- 학력
- 1959년: 취리히 연방 공과대학교
- 1960년: 라발 대학교
- 1963년: 캘리포니아 대학교 버클리
- 수상
- 1984년: 튜링상(Turing Award)
- 1988년: 전기 전자 기술자 협회 컴퓨터 선구자상 (IEEE Computer Pioneer Award)
- 1988년: 아이비엠 유럽 과학기술상 (IBM Europe Science and Technology Prize )
- 1989년: 마르셀 베노이스트 상(Marcel Benoist Prize)
- 1992년: 스위스 공학 아카데미(Swiss Academy of Engineering)
- 1994년: 미국 공학 아카데미(U.S. National Academy of Engineering), SIGPLAN 프로그래밍 언어 공로상(SIGPLAN Programming Languages Achievement Award)
- 2004년: 컴퓨터 역사박물관 펠로우(Fellow of the Computer History Museum)
- 저서
- 1972년: 체계적 프로그래밍: 소개 (Systematic Programming: An Introduction)
- 1975년: 알고리즘+데이터 구조 = 프로그램 (Algorithms + Data Structures = Programs)
- 1982년: 모듈라-2에서 프로그래밍 (Programming in Modula-2)
- 1985년: 알고리즘+데이터 구조 (Algorithms + Data Structures )
- 1988년: 마이크로플로우 및 나노플로우: 기초 및 시뮬레이션 (Microflows and Nanoflows: Fundamentals and Simulation)
- 1988년: 파스칼, 사용자 매뉴얼과 보고서 (PASCAL, user manual and report)
- 1990년: 알고리즘 앤 돔 데도메논 (Algorithm & domes dedomenon)
- 1992년: 프로젝트 오베론 (Project Oberon)
- 1992년: 오베론에서 프로그래밍: 파스칼과 모둘라를 뛰어넘는 단계 (Programming in Oberon: Steps Beyond Pascal and Modula)
- 1995년: 컴퓨터 과학 학생을 위한 디지털 회로 설계: 입문 교재 (Digital Circuit Design for Computer Science Students: An Introductory Textbook)
- 1996년: 컴파일러 건설 (Compiler construction)
- 1996년: 컴파일러 생성의 기본 및 기술 (Grundlagen und Techniken des Compilerbaus)
주요 활동[편집]
파스칼[편집]
파스칼은 1970년 니클라우스 비르트가 개발한 프로그래밍 언어이다. 알골의 개발에 참여했던 그가 학생들에게 프로그래밍 언어를 가르치기 위해 개발했다. 문법 설계가 깔끔하기 때문에 구조적 프로그래밍의 개념을 구현하고 설명하기에 알맞아서 교육용 언어로 분류된다. 파스칼이라는 이름은 17세기 프랑스의 유명한 수학자이자 철학자인 블레즈 파스칼(Blaise Pascal)에게서 이름을 따왔다. 파스칼 언어는 포인터(pointer)를 사용한 구조적 프로그래밍을 특징으로 한다. 파스칼에 객체 지향(OOP) 개념을 포함하여 오브젝트 파스칼(Object Pascal) 언어가 생겨났고, 이 오브젝트 파스칼을 일부 변형하여 델파이(Delphi) 프로그래밍 언어가 생겨났다. 컴파일러 규모가 크고 다양해서 복잡한 프로그램 처리에는 용이하지만, 배우기가 어렵고 구조가 복잡했던 알골이라는 언어와는 다르게 쉽고 효율적으로 프로그램을 작성할 수 있도록 간결성과 신뢰성에 중점을 두어 개발된 언어이다. 풍부한 데이터 구조, 구조화 프로그래밍에 적합한 제어 구조를 가졌으며, 주로 과학 계산용 중,소형 컴퓨터에서 사용된다. 데이터 형식에는 스칼라 데이터 형식, 구조 데이터 형식, 포인터 데이터 형식 등이 있다. 파스칼은 C언어와 유사한 점이 있지만, 코드를 간결하게 하고 버그를 더 쉽게 잡아내기 위한 목적으로 몇가지 기능을 제한함으로써 C언어보다 활용도가 떨어지는 언어가 되었다.
종류[편집]
- 오브젝트 파스칼(Object Pascal) : 파스칼에 객체 지향 개념을 포함하여 발전시킨 프로그래밍 언어이다. 주로 델파이(Delphi) 언어로도 잘 알려져 있다. 애플의 매킨토시의 전신인 애플 리자용으로 개발한 오브젝트 파스칼 컴파일러가 시초이며, 가장 널리 알려진 오브젝트 파스칼의 변종은 볼랜드/코드기어 사의 델파이에서 사용되는 '델파이 프로그래밍 언어'가 있다.[3]
- 델파이(Delphi) : 윈도우즈, 리눅스, 아이오에스(iOS), 안드로이드에서 작동하는 프로그램 제작에 이용되는 통합개발환경(IDE: Integrated Development Environment)이자 언어이다. 기본적인 문법은 파스칼 문법과 같지만 파스칼에 여러 기능들이 추가되어 현재는 델파이라는 언어로 존재한다.원래는 볼랜드가 개발하였으나 지금은 엠바카데로사에서 소유하여 개발하고 있다.[4]
버전[편집]
- 2000년 07월 12일 : FPC(Free Pascal Compiler) 1.0.0버전이 출시되었다.
- 2000년 10월 12일 : FPC 1.0.2버전이 출시되었다.
- 2000년 12월 31일 : FPC 1.0.4버전이 출시되었고, 안정화 작업을 하였다.
- 2005년 05월 15일 : FPC 2.0.0버전이 출시되었고, 향상된 MacPas모드, 변형 지원 기능 향상, 언어 파일 업데이트, 초기화되지 않은 변수에 대한 경고 개선, 많은 소규모 버그 및 호환성 수정 등 다양한 기능향상 및 버그 수정이 이루어졌다.
- 2005년 12월 08일 : FPC 2.0.2버전이 출시되었고, 2.0.0버전의 버그 수정이 이루어졌다.
- 2007년 09월 10일 : FPC 2.2.0버전이 출시되었고, 윈도우64, 윈도우CE(윈도우 모바일), 닌텐도 게임보이 어드밴스, 닌텐도DS 등의 새로운 플랫폼을 지원하게 되었으며, 컴파일 중 메모리 사용 감소 및 컴파일 속도 향상, 다중 리소스 파일 지원, Windows에서 COM / OLE 호환 가능 등 다양한 기능향상 및 버그 수정이 이루어졌다.
- 2010년 01월 01일 : FPC 2.4.0버전이 출시되었고, 드워프 디버그 정보를 개선하였으며, 많은 컴파일러 버그 수정과 라이브러리 업데이트 및 전체 프로그램 최적화를 하였다.
- 2011년 05월 22일 : FPC 2.4.4버전이 출시되었고, XML단위 개선, chm단위 개선, fppkg 및 fpmake 개선, 데이터베이스 유닛 개선, OS/2RTL의 멀티 스레딩 지원 수정 등 다양한 개선과 버그 수정이 이루어졌다.
- 2012년 01월 01일 : FPC 2.6.0버전이 출시되었고, 델파이 호환성 모드 개선, 일반 일반어 구문의 델파이 호환성 개선, 새 ARM 코드 생성기 기능 추가, ARM VFPv2 및 VFPv3 부동 소수점 장치 지원 등 언어 기능들을 많이 추가하고 다양한 플랫폼에 대한 지원을 추가 및 개선하였다.
- 2013년 02월 23일 : FPC 2.6.2버전이 출시되었고, ARM 아키텍처의 기능 수정 및 향상, 새로운 패키지 fpindexer (인덱싱 엔진)추가, fcl-base (및 RTL의 기본 클래스)에 관찰자 패턴 추가, fcl-db수정 및 개선, fcl-passrc (및 fpdoc) 수정 및 개선, PTCPas 및 gtk2 업데이트 등 새로운 기능들이 추가되고 개선되었다.
- 2014년 03월 11일 : FPC 2.6.4버전이 출시되었고, fcl-db수정 및 개선, 웹 및 json 패키지 동기화, chmcmd 컴파일러 개선 등 다양한 기능들이 개선되었다.
- 2015년 11월 25일 : FPC 3.0.0버전이 출시되었고, 몇 가지 새로운 플랫폼, 코드 페이지 인식 문자열 및 통합 파스칼 소스 저장소에 대한 지원을 갖췄다.
- 2017년 02월 15일 : FPC 3.0.2버전이 출시되었고, 3.0버전에 대한 버그 수정이 이루어졌다.
- 2017년 11월 28일 : FPC 3.0.4버전이 출시되었고, 3.0버전에 대한 버그 수정이 이루어졌다.
각주[편집]
- ↑ 니클라우스 비르트 위키백과 - https://ko.wikipedia.org/wiki/%EB%8B%88%ED%81%B4%EB%9D%BC%EC%9A%B0%EC%8A%A4_%EB%B9%84%EB%A5%B4%ED%8A%B8
- ↑ Niklaus Wirth Wikipedia - https://en.wikipedia.org/wiki/Niklaus_Wirth
- ↑ 오브젝트 파스칼 위키백과 - https://ko.wikipedia.org/wiki/%EC%98%A4%EB%B8%8C%EC%A0%9D%ED%8A%B8_%ED%8C%8C%EC%8A%A4%EC%B9%BC
- ↑ 델파이 위키백과 - https://ko.wikipedia.org/wiki/%EB%8D%B8%ED%8C%8C%EC%9D%B4
참고자료[편집]
- 니클라우스 비르트 개인 홈페이지 - https://people.inf.ethz.ch/wirth/
- 니클라우스 비르트 위키백과 - https://ko.wikipedia.org/wiki/%EB%8B%88%ED%81%B4%EB%9D%BC%EC%9A%B0%EC%8A%A4_%EB%B9%84%EB%A5%B4%ED%8A%B8
- Niklaus Wirth Wikipedia - https://en.wikipedia.org/wiki/Niklaus_Wirth
- 오브젝트 파스칼 위키백과 - https://ko.wikipedia.org/wiki/%EC%98%A4%EB%B8%8C%EC%A0%9D%ED%8A%B8_%ED%8C%8C%EC%8A%A4%EC%B9%BC
- 델파이 위키백과 - https://ko.wikipedia.org/wiki/%EB%8D%B8%ED%8C%8C%EC%9D%B4
같이 보기[편집]