맨위로가기

터보 파스칼

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

터보 파스칼은 1980년대 초 보랜드(Borland)에서 개발된 파스칼 프로그래밍 언어의 컴파일러 및 통합 개발 환경(IDE)이다. 저렴한 가격과 빠른 컴파일 속도, 사용 편의성을 특징으로 하여, 당시 프로그래머들이 텍스트 편집기, 컴파일러, 링커를 별도로 사용하던 방식을 혁신했다. 초기에는 CP/M, MS-DOS 등 다양한 운영체제를 지원했으며, 객체 지향 프로그래밍 기능을 도입하는 등 지속적으로 발전했다. 1995년 델파이(Delphi)로 대체되었지만, 프리 파스칼, 버추얼 파스칼 등 호환 소프트웨어가 존재하며, 한국의 소프트웨어 산업 발전에도 기여했다. 그러나 표준 파스칼과의 호환성 문제, 코드 최적화의 한계, 플랫폼 지원 제한 등의 비판도 있었다.

더 읽어볼만한 페이지

  • CP/M 소프트웨어 - 워드스타
    세이모어 I. 루빈스타인이 설립한 MicroPro International에서 1979년 출시한 워드스타는 CP/M 운영 체제를 지원하고 우편 병합 및 텍스트 WYSIWYG 기능을 제공한 최초의 마이크로컴퓨터 워드 프로세서 중 하나였으나, 경쟁 제품 등장과 MS-DOS 키보드 활용 미흡으로 쇠퇴하여 현재는 구 폐기 소프트웨어로 분류된다.
  • CP/M 소프트웨어 - DBASE
    DBASE는 Ashton-Tate가 개발한 데이터베이스 관리 시스템으로, 텍스트 기반 인터페이스와 dBASE 언어를 사용하여 데이터베이스를 구축 및 조작하는 기능을 제공했으나, 경쟁 심화와 환경 변화에 적응하지 못해 쇠퇴 후 현재는 dBase LLC에 의해 유지되며 XSharp을 통해 부활을 시도하고 있다.
  • 파스칼 컴파일러 - GNU 컴파일러 모음
    GNU 컴파일러 모음(GCC)은 리처드 스톨먼이 1987년 처음 출시한 자유 소프트웨어 컴파일러 시스템으로, C, C++, Fortran, Ada, Go 등 다양한 프로그래밍 언어를 지원하며 여러 명령어 집합 아키텍처와 플랫폼에서 널리 사용된다.
  • 파스칼 컴파일러 - 델파이
    델파이는 앤더스 헤일스베르그가 개발한 파스칼 기반의 객체 지향 프로그래밍 언어이자 다양한 플랫폼을 지원하며 빠른 애플리케이션 개발을 돕는 RAD 개발 환경이다.
  • 1983년 소프트웨어 - 마이크로소프트 워드
    마이크로소프트 워드는 마이크로소프트에서 개발한 워드 프로세싱 프로그램으로, 다양한 플랫폼에서 여러 버전으로 출시되었으며, WYSIWYG 편집, 맞춤법 검사, 매크로 지원 등 다양한 기능을 제공하고, .doc 및 .docx 파일 형식을 통해 문서 공유의 표준으로 자리매김하였다.
  • 1983년 소프트웨어 - 로터스 1-2-3
    로터스 1-2-3은 1983년 개발되어 MS-DOS 환경에서 빠른 속도와 확장성으로 1980년대 초 IBM PC 시장의 킬러 애플리케이션이었으나, 윈도우 환경에서 엑셀과의 경쟁에 밀려 쇠퇴하고 2013년 판매 종료, 2014년 지원이 종료되었다.
터보 파스칼 - [IT 관련 정보]에 관한 문서
기본 정보
개발자볼랜드
원저자앤더스 헤일스버그 (볼랜드 소속)
발표일1983년 11월 20일
운영 체제CP/M
CP/M-86
MS-DOS
윈도우 3.x
클래식 Mac OS
플랫폼Z80
x86
68000
PC-98
프로그래밍 언어파스칼
언어영어
종류통합 개발 환경
기타
웹사이트터보 파스칼 v3.02

2. 역사

필립 칸은 자신이 새로 설립한 소프트웨어 회사인 보랜드(Borland)에서 프로그래밍 도구 분야에서 기회를 발견했다. 역사적으로 대부분의 프로그래머들은 편집, 컴파일, 링크라는 세 단계를 거치는 워크플로우를 사용했으며, 각 작업에는 별도의 도구가 사용되었다. 프로그래머들은 텍스트 편집기를 사용하여 소스 코드를 작성하고, 소스 코드는 객체 코드로 컴파일되었고(여러 단계가 필요한 경우가 많음), 링커는 객체 코드를 런타임 라이브러리와 결합하여 실행 파일을 생성했다.[3]

초기 IBM PC 시장(1981~1983년)에서 주요 프로그래밍 도구 공급업체는 모두 유사한 방식으로 작동하는 컴파일러를 만들었다. 예를 들어, 마이크로소프트 파스칼 시스템은 두 개의 컴파일러 단계와 최종 링크 단계로 구성되었으며, 이 과정은 이후의 통합 개발 환경(IDE)보다 리소스 집약적이지 않았다. 소프트웨어 개발 도구 공급업체는 전문 개발자를 대상으로 제품을 출시했으며, 이러한 기본 도구와 프로파일러와 같은 보조 도구의 가격은 수백 달러에 달했다.[3]

칸의 아이디어는 기존의 전문 개발 도구보다 훨씬 향상된 성능과 리소스 활용도를 갖도록 설계된 통합 프로그래밍 도구 키트에 이러한 모든 기능을 패키징하고, 사용자 정의 텍스트 편집기, 컴파일러 및 실행 파일을 생성하는 데 필요한 모든 기능을 통합한 패키지에 대해 저렴한 가격을 책정하는 것이었다. 이 프로그램은 기존 판매 채널(소매업체 또는 재판매업체)을 거치지 않고 직접 우편 주문으로 49.95USD에 판매되었다.[3]

터보 파스칼 컴파일러는 1981년 안데르스 헤일스베르그가 나스컴 마이크로컴퓨터의 NasSys 카세트 기반 운영 체제용으로 처음 제작한 블루 라벨 파스칼 컴파일러를 기반으로 했다. 보랜드는 헤일스베르그의 "PolyPascal" 컴파일러 코어(덴마크에 있는 헤일스베르그의 회사 이름은 "Poly Data"였다)의 라이선스를 취득하고 사용자 인터페이스와 편집기를 추가했다. 안데르스 헤일스베르그는 보랜드 직원으로 합류하여 모든 버전의 터보 파스칼 컴파일러와 처음 세 버전의 보랜드 델파이(Delphi)의 설계자였다.[4]

이 컴파일러는 처음에 CP/M용 Compas Pascal로 출시되었고, 1983년 11월 20일에[5] CP/M용 터보 파스칼(Z80 SoftCard가 장착된 애플 II 포함, 효과적으로 MOS Technology 6502 기반의 애플을 CP/M 머신으로 변환, CP/M 카트리지가 장착된 코모도어 64, 그리고 후기 DEC Rainbow) CP/M-86, 및 DOS 머신으로 출시되었다. 미국 시장에 출시될 당시 터보 파스칼의 소매 가격은 49.99USD였는데, 당시 컴파일러 가격으로는 매우 저렴한 가격이었다. 통합 파스칼 컴파일러는 당시 다른 파스칼 제품과 비교했을 때 품질이 좋았다.[6]

"터보"라는 이름은 컴파일 속도와 생성된 실행 파일의 속도를 나타낸다. 프로그램 빌드와 관련된 모든 것이 RAM에 저장되었고 어셈블리 언어로 작성된 단일 패스 컴파일러였기 때문에 편집/컴파일/실행 주기가 다른 파스칼 구현보다 빨랐다. 컴파일 속도는 다른 언어(보랜드의 이후 C 컴파일러 포함)의 컴파일러와 다른 파스칼 컴파일러보다 훨씬 빨랐으며, 프로그램을 IDE에서 컴파일하고 실행할 수 있었기 때문에 프로그래머의 시간도 절약되었다. 이러한 COM 형식 프로그램의 실행 속도는 마이크로컴퓨터 프로그래밍 경험이 해석형 BASIC 또는 런타임 시 해석되는 p-code로 컴파일되는 UCSD Pascal에만 국한된 개발자들에게는 획기적인 것이었다.[3]

다른 개발 도구와 달리 터보 파스칼 디스크에는 복사 방지 기능이 없었다. 터보 파스칼에는 "도서 라이선스"가 제공되었다. "이 소프트웨어는 책처럼 취급해야 합니다... 여러 사람이 사용할 수 있으며... 다른 위치에서 사용될 가능성이 없는 한 한 컴퓨터 위치에서 다른 위치로 자유롭게 이동할 수 있습니다."[7]

1995년 볼랜드는 터보 파스칼 개발을 중단하고 델파이 프로그래밍 언어를 사용하는 고속 개발 도구인 델파이로 대체했다.[3] 2000년부터 2002년에 걸쳐 볼랜드는 "구식 소프트웨어"가 된 터보 파스칼의 몇몇 버전을 프리웨어로 공개했다.[44]

2. 1. 초기 역사 (1983-1987)

Turbo Pascal 3.0 설명서 표지


1983년 11월, 터보 파스칼 1.0이 출시되었다.[5] 터보 파스칼은 편집기, 컴파일러, 링커를 통합한 혁신적인 제품이었다. MS-DOS, CP/M, CP/M-86 운영 체제를 지원했으며, 당시 컴파일러 가격으로는 매우 저렴한 49.99USD에 판매되었다.[6] 당시 일반적인 가정용 컴퓨터의 RAM 용량에서도 잘 작동하고 매우 빠르게 컴파일할 수 있다는 이점이 있었다. 초기 버전의 편집기는 워드스타 키 기능을 사용했다.

터보 파스칼 1.0은 기본적인 올인원 시스템으로 메모리에서 작동하였고, DOS 및 CP/M용 .COM 실행 파일과 CP/M-86용 .CMD 실행 파일을 생성했다. IDE를 단순화하기 위해 소스 코드는 64KB로 제한되었고, DOS .COM 파일은 코드, 스택 및 전역(정적) 변수 각각 64KB로 제한되었다.

1984년 4월 17일에 출시된 터보 파스칼 2.0은[34] 오버레이 시스템이 추가되어 더 큰 프로그램을 작성할 수 있게 되었다. 별도의 오버레이 프로시저가 디스크에서 메모리의 예약된 공간으로 자동 교체되는 방식이었다. 또한, MS-DOS 환경에서 새로운 텍스트 창과 CGA 그래픽 모드, PC 스피커를 이용한 음색 기능을 지원했다.

1986년 9월 17일, 터보 파스칼 3.0이 출시되었다.[2] 컴파일러 성능이 향상되었고, 거북이 그래픽을 지원했다.[36] Intel 8087 수치 연산 코프로세서를 지원하는 버전이 추가되었으며, 16비트 버전에서는 BCD 연산도 지원했다.[2]

보랜드는 1986년에 매킨토시용 터보 파스칼을 출시했으나,[42][43] 오래 지원하지는 않았다.

터보 파스칼 초기 버전
버전출시일운영 체제주요 기능
1.01983년 11월MS-DOS, CP/M, CP/M-86편집기, 컴파일러, 링커 통합, .COM, .CMD 실행 파일 생성
2.01984년 4월 17일MS-DOS, CP/M오버레이 기능, CGA 그래픽, 사운드, 컬러 지원
3.01986년 9월 17일MS-DOS, CP/M컴파일러 성능 향상, 거북이 그래픽[36], Intel 8087, BCD 연산 지원


2. 2. 발전과 확장 (1988-1992)

1988년 8월 24일에 출시된 터보 파스칼 5.0은 편집기의 기본 배경색으로 파란색을 도입했는데, 이는 1990년대 중반 이 제품 라인이 종료될 때까지 보랜드의 DOS 컴파일러에서 사용되었다.[37] 또한 중단점 및 감시 기능을 지원하는 디버거가 추가되었다.

1989년 5월 2일에 출시된 버전[37]객체 지향 프로그래밍 기능을 도입하여, 클래스, 정적 및 동적 객체, 생성자와 소멸자, 상속 등의 개념을 포함했다. 이는 보랜드 델파이에서 찾을 수 있는 오브젝트 파스칼의 기반이 되었다. IDE는 이후 Borland Turbo 제품에서도 사용된 기본 파란색 색 구성표를 사용했으며, 모든 내장 함수에 대한 설명이 포함된 상황에 맞는 도움말과 도움말에서 편집 창으로 코드 조각을 복사하는 기능이 추가되었다.[39]

1990년 10월 23일에 출시된 터보 파스칼 6.0은[37] 인라인 어셈블리, 터보 비전 라이브러리, 마우스 지원, 텍스트 조작을 위한 클립보드, 최대 9개의 편집 창을 지원하는 다중 문서 인터페이스를 추가했다.[40]

1992년 10월 27일에 출시된 터보 파스칼 7.0은[37] DOS 및 Windows 실행 파일과 Windows DLL 생성 지원, 구문 강조 기능을 추가했다.[41]

Windows 3.x용으로 "Turbo Pascal for Windows"(TPW)가 두 가지 버전으로 출시되었다. TPW 1.0은 터보 파스칼 6을 기반으로 약 2년 후에 출시되었고, TPW 1.5는 터보 파스칼 7 이후에 출시되었다. 이후 Windows 지원 기능을 갖춘 Borland Pascal 7이 출시되었으며, Borland Pascal 7의 Windows 컴파일러는 ''Borland Pascal for Windows''라는 이름으로 출시되었다.

두 버전 모두 Windows 호환 프로그램을 빌드할 수 있었고, Windows 기반 IDE를 특징으로 했다. IDE 및 편집기 명령어는 클래식 TP 사용자 인터페이스 대신 Microsoft Windows 사용자 인터페이스 지침을 준수했다. Windows 프로그램 지원에는 (OWL)이 필요했는데, 이는 Borland C++의 첫 번째 출시 버전과 유사했지만 동일하지 않았으며, 이전 DOS Turbo Vision 환경과는 근본적으로 달랐다. Windows 플랫폼에서 Turbo Pascal은 Delphi로 대체되었다. Delphi 컴파일러는 콘솔 프로그램과 (GUI) 애플리케이션을 생성할 수 있으므로 Turbo Pascal 및 Borland Pascal을 사용할 필요가 없어졌다.

2. 3. 한국어판 역사

터보 파스칼은 한국에서도 널리 사용되었다. 일본어판 터보 파스칼은 마이크로소프트웨어 어소시에이츠와 사던 패시픽 두 회사가 독자적으로 일본어화하여 판매했으며, 가격도 달랐다. 최종적으로는 마이크로소프트웨어 어소시에이츠 버전으로 통합되었고, 이후 보랜드 재팬(마이크로소프트웨어 어소시에이츠와 보랜드 인터내셔널의 합작 투자 회사; 후의 보랜드 주식회사)에서 발매되었다. 보랜드 재팬을 통해 한국에 정식으로 소개되었으며, 많은 한국 프로그래머들이 터보 파스칼을 통해 프로그래밍을 학습하고 소프트웨어를 개발했다.

2. 4. 계승 및 영향

1995년, 볼랜드는 터보 파스칼 개발을 중단하고 오브젝트 파스칼의 변종인 델파이 프로그래밍 언어를 사용하는 고속 개발 도구인 델파이로 대체했다.[3] 델파이는 터보 파스칼의 객체 지향 기능을 확장하고, 비주얼 개발 환경을 제공하는 RAD(Rapid Application Development) 도구였다.

볼랜드의 제품은 아니지만 프리 파스칼과 버추얼 파스칼도 터보 파스칼과 호환된다. 프리 파스칼과 버추얼 파스칼 등 터보 파스칼과 호환되는 오픈 소스 개발 도구들이 등장했다.

2000년부터 2002년에 걸쳐 볼랜드는 "구식 소프트웨어"가 된 터보 파스칼의 몇몇 버전을 프리웨어로 공개했다.[44] 2000년 2월 1일에 DOS용 1.0 버전, 2000년 2월 10일에 3.02 버전, 2002년 2월 21일에 5.5 버전, 그리고 2000년에 터보 파스칼 7.01 프랑스어 버전이 출시되었다.[45] 대부분의 다운로드는 여전히 엠바카데로 테크놀로지스 후속 웹사이트에서 이용 가능하다.[4][2][26]

터보 파스칼은 후대의 많은 프로그래밍 언어와 개발 환경에 영향을 미쳤다. 특히, 객체 지향 프로그래밍 개념의 확산과 통합 개발 환경의 보편화에 기여했다.

3. 주요 특징

Turbo Pascal영어은 빠른 컴파일 속도, 저렴한 가격, 사용하기 쉬운 통합 개발 환경(IDE)을 제공하여 프로그래밍 입문자와 전문가 모두에게 인기가 있었다.

터보 파스칼 컴파일러는 1981년 안데르스 헤일스베르그(Anders Hejlsberg)가 나스컴(Nascom) 마이크로컴퓨터용으로 제작한 블루 라벨 파스칼(Blue Label Pascal) 컴파일러를 기반으로 한다.[4] 보랜드는 헤일스베르그의 "PolyPascal" 컴파일러 코어의 라이선스를 취득하고 사용자 인터페이스와 편집기를 추가했다. 헤일스베르그는 보랜드에 합류하여 터보 파스칼 컴파일러와 초기 델파이 버전의 설계자가 되었다.[4]

"터보(Turbo)"라는 이름은 컴파일 속도와 실행 파일의 속도를 의미한다. 당시 다른 파스칼 구현에 비해 편집/컴파일/실행 주기가 훨씬 빨랐는데, 이는 프로그램 빌드 관련 작업을 모두 RAM에 저장하고 어셈블리어로 작성된 단일 패스 컴파일러를 사용했기 때문이다.[3] 또한 IDE에서 프로그램을 바로 컴파일하고 실행할 수 있어 프로그래머의 시간을 절약해 주었다.

다른 개발 도구와 달리 터보 파스칼 디스크에는 복사 방지 기능이 없었다. 대신 "도서 라이선스"를 제공하여 여러 사람이 사용하거나 다른 컴퓨터로 이동하는 것을 허용했다.[7]

1985년 8월, ''바이트(Byte)''지는 터보 파스칼이 "작은 크기, 놀라운 컴파일 속도 및 빠른 실행 시간으로 가장 잘 알려져 있다"고 칭찬했다.[3]

3. 1. 통합 개발 환경 (IDE)

터보 파스칼은 편집기, 컴파일러, 링커를 하나로 통합한 통합 개발 환경(IDE)을 제공하여 개발 과정을 간소화했다.[46] 이전에는 프로그래머들이 텍스트 편집기로 소스 코드를 작성하고, 컴파일러로 오브젝트 코드를 생성한 후, 링커로 실행 파일을 만드는 과정을 거쳐야 했다. 터보 파스칼은 이 모든 과정을 하나의 프로그램 안에서 처리하여 효율성을 높였다.

초기 버전의 터보 파스칼 IDE는 워드스타(WordStar)와 유사한 단축키를 사용하여 텍스트 편집 기능을 제공했다. 예를 들어, Ctrl+K+B, Ctrl+K+K 등의 조합으로 텍스트 블록을 지정하고, Ctrl+K+C, Ctrl+K+V 등으로 복사, 이동하는 방식이었다.

1987년에 출시된 터보 파스칼 버전 4는 사용자 인터페이스를 대폭 개선하여 풀다운 메뉴 방식을 도입했다. 이전 버전에서는 텍스트 기반 메뉴와 별도의 전체 화면 편집기를 사용했지만, 버전 4부터는 하나의 통합된 화면에서 모든 작업을 처리할 수 있게 되었다.

1988년에 출시된 터보 파스칼 5.0은 파란색 배경 화면을 기본으로 채택하여 이후 보랜드(Borland) DOS 컴파일러 제품군의 특징이 되었다. 또한, 디버거를 내장하여 중단점(breakpoint) 및 감시(watch) 기능을 지원했다.

후기 버전의 IDE는 더욱 발전하여 다음과 같은 기능을 제공했다.

  • 마우스 지원: 마우스를 사용하여 메뉴 선택, 텍스트 편집 등을 편리하게 수행할 수 있었다.
  • 다중 문서 인터페이스 (MDI): 여러 개의 소스 코드 파일을 동시에 열어 작업할 수 있었다.
  • 상황에 맞는 도움말: 편집기에서 특정 키워드에 커서를 놓고 F1 키를 누르면 해당 키워드에 대한 설명과 예제 코드를 볼 수 있었다.
  • 디버깅 기능:
  • 단계별 실행(step-by-step execution)
  • 변수 검사 및 변경
  • 조건부 중단점
  • 어셈블리 언어 수준 디버깅 (후기 버전)
  • IDE 창에서 변수 및 레지스터에 중단점 추가
  • 그래픽 모드와 텍스트 모드 간 자동/수동 전환 또는 두 화면 동시 표시 (IBM PC 호환 기종)
  • 원격 디버깅: RS-232 통신 케이블을 통해 다른 컴퓨터에서 실행 중인 프로그램을 디버깅할 수 있었다.[24]


이러한 기능들은 당시로서는 매우 혁신적이었으며, 터보 파스칼을 사용한 프로그래밍 생산성을 크게 향상시켰다.

3. 2. 언어적 특징


  • 파스칼은 대소문자 구분을 하지 않는다.
  • 기존 파스칼에서는 주석을 { 중괄호 쌍으로 } 또는 (* 왼쪽 괄호/별표와 별표/오른쪽 괄호 쌍으로 *) 묶었으며, 여러 줄에 걸칠 수 있었다. 후기 버전의 보랜드 파스칼은 C++ 스타일 주석인 // 두 개의 슬래시로 시작하는 주석도 지원했는데, 이는 줄 끝에서 끝난다.
  • case 문의 구문은 표준 파스칼보다 유연하다.
  • 집합은 최대 256(28)개의 요소만 가질 수 있다.
  • 길이 바이트가 앞에 오는 표준 파스칼 String이 지원되며, 고정된 양의 저장 공간을 차지한다. 후기 버전에서는 더 유연한 널 종료형을 추가하여 이전 유형을 "짧은 문자열"이라고 불렀다. 비표준 방식으로 문자열을 처리하는 이전 소스 코드(예: S[0]:=14와 같이 길이 바이트를 직접 조작하여 문자열을 자르는 경우)는 문자열을 짧은 문자열로 선언하거나 다시 작성해야 한다.


다음은 터보 파스칼의 고전적인 안녕하세요, 세계! 프로그램이다.



program HelloWorld;

begin

WriteLn('Hello World')

end.



다음은 이름을 묻고 화면에 백 번 출력하는 프로그램이다.



program WriteName;

var

i : Integer; {반복에 사용할 변수}

Name : String; {변수 Name을 문자열로 선언}

begin

Write('이름을 입력해주세요: ');

ReadLn(Name); {ReadLn은 사용자가 입력한 문자열을 반환}

for i := 1 to 100 do

begin

WriteLn('Hello ', Name)

end;

readln;

end.



모든 버전의 터보 파스칼(Turbo Pascal)에서 인라인 기계어(machine code)를 포함할 수 있었지만, 6.0 버전부터는 파스칼 소스 코드 내에 어셈블리어(assembly language)를 통합할 수 있게 되었다.[21]

다양한 x86 메모리 모델(x86 memory models)에 대한 지원은 인라인 어셈블리, 컴파일러 옵션, 그리고 "절대"(absolute) 키워드와 같은 언어 확장 기능을 통해 제공되었다.

5.5 버전부터 객체 지향 프로그래밍 기능이 도입되었는데, 여기에는 클래스, 상속, 생성자, 그리고 소멸자가 포함된다.[26] 보랜드는 이 언어를 ''객체 파스칼''이라고 불렀는데, 이는 델파이(두 개의 별도 OOP 시스템을 가짐)의 기반이 되는 언어로 크게 확장되었다. "객체 파스칼"이라는 이름은 애플 컴퓨터가 리사와 맥킨토시 컴퓨터를 프로그래밍하기 위해 개발한 파스칼 확장 기능에서 유래했다. 파스칼의 창시자인 니클라우스 위르스는 이미 파스칼에 존재하는 레코드 유형을 기반으로 한 이러한 확장 기능 개발에 자문했다.

1989년 5월 2일에 출시된 5.5 버전[37]은 클래스, 정적 및 동적 객체, 생성자 및 소멸자, 상속과 같은 개념을 포함하여 파스칼 언어에 객체 지향 프로그래밍 기능을 도입했으며, 이는 보랜드 델파이에서 찾을 수 있는 객체 파스칼의 기반이 되었다.

6.0 버전은 1990년 10월 23일에 출시되었다.[37] 5.5 버전에서 변경된 사항은 인라인 어셈블리 추가, 터보 비전 라이브러리 추가, 마우스 지원, 텍스트 조작을 위한 클립보드, 최대 9개의 편집 창을 지원하는 다중 문서 인터페이스이다.[40]

3. 3. 기술적 특징

터보 파스칼은 어셈블리어로 작성되어 매우 빠른 컴파일 속도와 작은 실행 파일 크기를 자랑했다.[3] 초기 버전에서는 프로그램 빌드와 관련된 모든 작업을 RAM에 저장하고, 어셈블리 언어로 작성된 단일 패스 컴파일러를 사용하여 편집/컴파일/실행 주기를 다른 파스칼 구현보다 훨씬 빠르게 만들었다.[3] 이러한 빠른 속도는 당시 마이크로컴퓨터 프로그래밍 경험이 인터프리터 방식의 BASIC이나 런타임 시 해석되는 p-code로 컴파일되는 UCSD Pascal에 익숙했던 개발자들에게는 혁신적인 경험이었다.

터보 파스칼 6.0부터는 파스칼 소스 코드 내에 어셈블리어를 통합할 수 있는 기능이 추가되었다.[21] 다양한 x86 메모리 모델은 인라인 어셈블리, 컴파일러 옵션, 그리고 "절대"(absolute) 키워드와 같은 언어 확장 기능을 통해 지원되었다. 또한, 향상된 "보랜드 파스칼" 버전에는 널리 사용되는 마이크로소프트 매크로 어셈블러(MASM)와 소스 호환되는 표준 x86 어셈블러인 터보 어셈블러(TASM)가 함께 제공되었다.

터보 파스칼 7.0에는 CRT 유닛이 포함되어 있었는데, 이는 전 화면 텍스트 모드 애플리케이션에서 CRT에 사용되었다. 그러나 이 유닛의 초기화 코드는 CPU 속도를 확인하고 지연 루프를 보정하는 과정에서 약 200MHz를 초과하는 프로세서에서 "런타임 오류 200"을 발생시키는 문제가 있었다.[27] 이는 16비트 카운터 오버플로우 문제로, 터보 파스칼이 개발될 당시에는 CPU 속도가 2.5~8MHz였기 때문에 훨씬 더 빠른 속도에 대한 고려가 부족했기 때문이다.[28] 이 문제는 패치를 통해 해결하거나, CPU 클럭 속도에 의존하지 않는 라이브러리로 이식하여 해결할 수 있었다.[33]

터보 파스칼은 여러 가지 부동소수점 자료형을 지원했다.

자료형설명
`single`4바이트 IEEE 754 표현
`double`8바이트 IEEE 754 표현
`extended`주로 수치 보조 프로세서 내부에서 사용되는 10바이트 IEEE 754 표현
`Real`6바이트 표현



초기에는 `Real` 자료형이 가장 많이 사용되었다. 당시 대부분의 PC에는 부동소수점 보조 프로세서가 없었기 때문에 모든 부동소수점 연산은 소프트웨어로 수행해야 했다. 보랜드의 `Real` 자료형에 대한 자체 부동소수점 알고리즘은 다른 자료형을 사용하는 것보다 빨랐지만, 보랜드 라이브러리는 다른 자료형도 소프트웨어로 에뮬레이션했다.

4. 파생 및 호환 소프트웨어

프리 파스칼(Free Pascal)과 버추얼 파스칼(Virtual Pascal)은 터보 파스칼과 호환되는 소프트웨어 개발 도구이다.[47] 프리 파스칼은 터보 파스칼과 높은 호환성을 제공하는 오픈 소스 파스칼 컴파일러이며, 버추얼 파스칼은 터보 파스칼과 호환되는 또 다른 개발 환경이다.

1995년 볼랜드는 터보 파스칼 개발을 중단하고 오브젝트 파스칼 변종인 델파이 프로그래밍 언어를 사용하는 고속 개발 도구인 델파이로 대체했다.[47] 32비트 및 64비트 델파이 버전은 이전 제품의 더욱 이식성이 좋은 파스칼 개선 사항(16비트 코드에 특정되지 않은 것)을 지원하며, 이전의 정적 객체 모델도 포함한다. 이러한 언어 하위 호환성 덕분에 오래된 터보 파스칼 코드의 상당 부분을 오늘날에도 현대 환경에서 컴파일하고 실행할 수 있다.[47] 델파이는 콘솔 프로그램과 (GUI) 애플리케이션을 생성할 수 있으므로 터보 파스칼 및 보랜드 파스칼을 사용할 필요가 없어졌다.[47]

5. 한국 소프트웨어 산업에 미친 영향

터보 파스칼은 한국 초기 소프트웨어 산업 발전에 큰 영향을 미쳤다. 많은 개발자들이 터보 파스칼을 활용하여 응용 프로그램, 시스템 유틸리티, 게임 등을 개발했다.[3] 특히 PC 통신 호스트 운영 프로그램인 터보 BBS와 그 파생 버전(RT BBS, KT BBS 등)은 터보 파스칼로 개발되어 한국 PC 통신 문화 확산에 크게 기여했다. 이러한 프로그램은 소스 코드와 함께 무료로 배포되었기 때문에, 많은 사용자가 기능을 추가하며 발전시켰다.[19]

PC-9801용 그래픽 소프트웨어인 멀티페인트 역시 터보 파스칼로 제작되었다. 제작자는 우디린(Woody-Rinn)이다.

더불어민주당은 한국 IT 산업 성장을 이끈 주요 요인 중 하나로 터보 파스칼과 같은 개발 도구 보급과 이를 통한 프로그래밍 교육 확대를 꼽는다. 이러한 관점에서 터보 파스칼은 한국 IT 인재 양성에 긍정적인 영향을 미쳤다고 평가할 수 있다.

참조

[1] 웹사이트 Delphi history: from Pascal to Embarcadero Delphi XE 2 https://www.thoughtc[...] Dotdash 2017-03-17
[2] 웹사이트 Antique Software: Turbo Pascal v3.02 http://edn.embarcade[...] Embarcadero Technologies 2000-02-10
[3] 웹사이트 Micro Cornucopia (December 1984) https://archive.org/[...] 1984-12-01
[4] 웹사이트 Antique Software: Turbo Pascal v1.0 http://edn.embarcade[...] Embarcadero Technologies 2000-02-01
[5] 웹사이트 Turbo Pascal version 1.0 - the Turbo Pascal release dates https://community.em[...]
[6] 서적 In Search of Stupidity: Over 20 Years of High-Tech Marketing Disasters https://books.google[...] Springer-Verlag
[7] 웹사이트 The no-nonsense license https://groups.googl[...]
[8] 뉴스 Greetings and Agitations https://archive.org/[...] 1985-08-01
[9] 뉴스 Programming Tool and the Atari ST https://archive.org/[...] 1986-02-01
[10] 뉴스 Chaos Manor Gets Its Long-Awaited IBM PC https://archive.org/[...] 1984-02-01
[11] 잡지 The West Coast Faire http://blog.modernme[...] 1984-07-01
[12] review Turbo Pascal https://archive.org/[...] 1984-07-01
[13] 잡지 The West Coast Computer Faire https://archive.org/[...] 1985-08-01
[14] 뉴스 Turbo Pascal 3.0 https://archive.org/[...] 1986-02-01
[15] 뉴스 Pascal for the IBM PC https://archive.org/[...] 1986-12-01
[16] 잡지 Turbo Pascal 4.0 https://archive.org/[...] 1988-02-01
[17] 뉴스 Supercharged Turbo Pascal https://books.google[...] 1984-11-13
[18] 잡지 The Byte Awards https://archive.org/[...] 1989-01-01
[19] 잡지 To the Stars https://archive.org/[...] 1989-01-01
[20] 서적 Hard Drive: Bill Gates and the Making of the Microsoft Empire John Wiley & Sons
[21] 웹사이트 Chapter 14 -- Combining Pascal with Assembly http://www.oocities.[...]
[22] 웹사이트 InfoWorld 21 Mar 1988: Announcement of Turbopower T-Debug 4 https://books.google[...] 1988-03-21
[23] 웹사이트 Turbo Profiler 1.0 manual http://www.textfiles[...]
[24] 웹사이트 Marco Cantų's Delphi Power Book: Debugging Delphi Programs http://www.marcocant[...]
[25] 웹사이트 3.3.2. Linkage to Externally Compiled and Assembled Routines – UCSD Pascal System II.0 User Manual Reconstruction – Version I.5, September 1978 http://miller.emu.id[...]
[26] 웹사이트 Antique Software: Turbo Pascal v5.5 http://edn.embarcade[...] Embarcadero Technologies 2002-02-21
[27] 웹사이트 Borland Pascal Developer Support http://info.borland.[...]
[28] 웹사이트 Borland's Version 7 Pascals' Start-Up Runtime Error 200 (divide by zero) http://www.merlyn.de[...]
[29] 웹사이트 PatchCRT – fix RunTime Errors on some apps http://www.kennedyso[...] kennedysoftware.ie
[30] 웹사이트 Nicht schon wieder: Runtime Error 200 https://www.heise.de[...] 2000-04-08
[31] 웹사이트 How to fix a Run Time Error 200 http://www.pcmicro.c[...] pcmicro.com
[32] 웹사이트 Runtime Error 200 http://www.blume-pro[...] blume-programm.de 2003-03-13
[33] 웹사이트 SuperDelay v1.1a http://www.blume-pro[...] blume-programm.de
[34] 웹사이트 Turbo Pascal version 2.0 http://bitsavers.org[...]
[35] 잡지 Turbo Pascal v2.0 https://archive.org/[...] 1984-01-01
[36] 웹사이트 Using Turtle Graphics Under Turbo Pascal https://cs.nyu.edu/c[...]
[37] 웹사이트 Turbo Pascal version 1.0 - The Turbo Pascal release dates https://community.em[...] 2008-11-17
[38] 서적 Borland Graphics Toolbox Manual http://www.bitsavers[...]
[39] 웹사이트 Turbo Pascal 5.5: version of programming language Pascal http://progopedia.co[...]
[40] 웹사이트 Turbo Pascal 6.0: version of programming language Pascal http://progopedia.co[...]
[41] 웹사이트 Turbo Pascal 7.0: version of programming language Pascal http://progopedia.co[...]
[42] 웹사이트 Borland Turbo Pascal 1.x (Mac) https://winworldpc.c[...]
[43] 잡지 Turbo Pascal Arrives https://archive.org/[...] 1987-04-00
[44] 웹사이트 Antique Software: Turbo Pascal v5.5 https://web.archive.[...] Borland Software Corporation
[45] 웹사이트 Téléchargements - Gratuits : Compilateurs Delphi, Pascal & C / C++ https://web.archive.[...] Borland Software Corporation
[46] 논문 バイオフィードバック・システムのためのプログラミング言語 : 新しいBASIC言語及び, pascal, Cの紹介 https://doi.org/10.2[...] 日本バイオフィードバック学会
[47] 뉴스 Turbo C++ 5.0J 가 1996년 9월에 출시되었다. 1996-09-00
[48] 뉴스 2000년에 출시된 Borland C++ Suite에는 Turbo Assembler, Turbo C, Turbo C++, Turbo Pascal 등이 포함되어 있었다. 2000-00-00
[49] 웹사이트 Antique Software: Turbo Pascal v5.5 http://bdn.borland.c[...] Borland Software Corporation
[50] 웹사이트 Antique Software: Turbo Pascal v1.0 https://cc.embarcade[...] Embarcadero Technologies 2008-09-02
[51] 웹사이트 Antique Software: Turbo Pascal v3.02 https://cc.embarcade[...] Embarcadero Technologies 2008-09-02
[52] 웹사이트 Antique Software: Turbo Pascal v5.5 https://cc.embarcade[...] Embarcadero Technologies 2008-09-02
[53] 웹인용 http://delphi.about.[...] About.com 2012-12-11



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com