본문 바로가기

CS(Computer Science)/프로그래밍언어14

2. Algol 60 , Algol 68 - 컴파일러 언어 - 1950년대 후반 등장 - 알고리즘 기술, 범용 - 양식의 자유화(free format) , 구조적 명령문 , begin-end 블록 , 변수 타입 선언 , 되부름 , call-by-value 매개변수 등의 개념 - 스택 기반 실행 환경 도입 - BNF 최초 사용 - 블록 구조 제공으로 알고리즘 작성 용이 목적 (블록구조, 재귀적 용법) - 효율성보다 일반적인 원칙을 중시하기 시작했다 - 번역기 구현이 어렵고, 번역 수행 알고리즘이 충분히 이해되지 않아 언어가 성공하지 못함 조건문에서의 현수 문제 해결 (dangling) 중첩문 if c1 then begin if c2 then S1 else S2 end if c1 then begin if c2 then S1 end else S2 바.. 2023. 4. 19.
1. Fortran 1954-1957년 John Backus에 의해 고안된 최초의 고급 언어 Fortran ll , Fortran lV , Fortran 66 , Fortran 77, Fortran 90 Fortran 컴파일러는 효율적인 기계어 코드 작성 -> 언어의 긴 생명 제공 배열, 반복구조, 분기문, 부프로그램 등 특징이 이후 언어에 큰 영향 비 구조형 언어 컴파일러 언어 컴퓨터 제조회사의 후원으로 성공 실행의 효율성이 설계 목적 그러나, 사용자 편의성 및 범용성이 무시됐음 배열 부분 -> 가변 배열 전달능력, 가변배열 선언 불허 동등 연산자, 배정 연산자 (=, := ) -> 배열, 레코드에 적용 불허 매개변수 전달 방식 -> call by reference 만 허용 상수 -> 상수 이름 부재 ,과 . -> , 는.. 2023. 4. 19.
4. 프로그래밍 언어 구문과 구현 기법 언어 정의 - 구문, 의미 - 자연어 정의 , 형식 정의 - 구문 형식 정의 - BNF, EBNF , 구문 도표 컴퓨터 - 프로그램을 실행 할 수 있는 알고리즘 + 자료구조 집합 - 하드웨어 컴퓨터 (실제 컴퓨터) - 소프트웨어 시뮬레이터 컴퓨터 - 가상 컴퓨터 ( virtual computer) 가상 컴퓨터 -> 고급 언어 프로그래머는 컴퓨터를 가상의 고급 언어 컴퓨터로 간주 언어 구문 - 프로그래밍 언어에서 사용할 수 있는 문자들의 집합 - 알파벳 (A-Z) 26개 + 아라비아 숫자 (0-9) 10개 ex) Fortran : 기본 문자 집합 + 13개의 특수문자 (+ - * / ( ) , . $ ` : 공백) ex) Algol 60 : 알파벳 대소문자 52개 + 아리바아 숫자 10개 + 28개의 특수.. 2023. 4. 7.
3. 프로그래밍 언어 설계 시 주의점 설계 기준의 중요성 •설계 목적과 사용자편의성을 확보 해야 함 •설계 목적 •어느 분야에 사용할 것인가? •범용? DB? 그래픽? 실시간? •사용자 편의성 •이 언어만의 문법 , 또는 같은 내용이지만 복잡하게 작성하면 안됨. •주요 언어 성공 요인 (언어 자체보다 외적 요인) •Fortran •컴퓨터 제조회사 후원 •Cobol •미 국방성 지원 •Lisp •인공지능 분야에서 사용 •Pascal •교육용, 마이크로컴퓨터 표준언어 역할 •PL/I •IBM의 적극 후원 •C •UNIX 운영체제의 성공 •Ada •미국방성 지원 •주요 언어 설계 목적 •Fortran •실행의 효율성 •Cobol •기업에서의 사용이 목표 •영어와 유사한 문법 구조로 제작 -> 그냥 복잡만 해짐. •인간의 판독성(readabilit.. 2023. 4. 7.
728x90