[프로그래밍 언어론]컴파일러언어와 인터프리터언어의 비교(C와 LISP)
- 최초 등록일
- 2017.05.15
- 최종 저작일
- 2015.06
- 11페이지/
MS 워드
- 가격 2,000원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
소개글
컴파일러 언어와 인터프리터 언어의 차이점을 C언어와 Lisp을 비교하여 설명하는 레포트입니다.
목차
1. 언어의 탄생
2. 언어의 설계적 측면
1) 표현력 측면
2) 정확성 측면
3) 확장성 측면
3. 언어의 구문
1) BNF(Backus-Naur Form)
4. 언어의 구현 기법
5. 자료형
6. 바인딩
7. 선언
8. goto문
9. 기억장소 배당
10.자기 평가서
본문내용
• 언어의 탄생
LISP(LISt Processor)는 1958년 MIT의 John McCarthy에 의해 개발되었다. 당시 McCarthy는 인공지능을 연구하는 프로제그에서 FORTRAN에서 목록 작업을 수행하는 서브루틴의 패키지로 Fortran List Processing Language(FLPL)을 구현하는데 이것이 LISP의 모태가 된다. 일반적인 리스트 구조와 함수의 응용을 기본으로 한 ‘함수형 프로그래밍 언어’이다. MacLisp, UTLisp, Franz Lisp, 그리고 최근에 나온 Common Lisp와 스킴(Scheme) 등은 모두 Lisp의 후예들로 오늘날 인공 지능 분야에서 폭넓게 사용되고 있다.
FORTRAN → FLPL → LISP
C 는 1972년 Kenneth Thompson과 Dennis Ritchie가 벨 연구소에서 일할 당시 새로 개발된 유닉스 운영 체제에서 사용하기 위해 개발한 ‘명령형 프로그래밍 언어’이다. Kenneth Thompson은 BCPL 언어를 필요에 맞추어 개조해서 B언어라 명명했고, Dennis Ritchie가 이것을 개선하여 C언어가 탄생했다. 유닉스 시스템의 바탕 프로그램은 모두 C로 쓰여졌고, 많은 운영 체제의 커널도 또한 C로 만들어졌다. 오늘날 많이 쓰이는 C++은 C가 ‘객체 지향형 언어’로 발전된 것이며, C#, Objective-C, D, Java 등 다른 다양한 최신 언어들도 그 뿌리를 C에 두고 있다.
ALGOL 60 → CPL → BCPL → B → C
• 언어의 설계적 측면
- 표현력(expressiveness) 측면
표현력이란 언어가 복잡한 과정이나 구조를 표현하는 데 용이함을 의미한다. Lisp는 또한 자료와 프로그램 모두가 임의의 방법으로 실행 동안 변화될 수 있는 표현력이 있으며, 이것은 특히 자료의 크기나 형태가 알려지지 않은 복잡한 상황에서 유용하다.
참고 자료
프로그래밍 언어 개념 | 원유헌 저 | 정익사 | 2012.09.10