Tcl: 두 판 사이의 차이

내용 삭제됨 내용 추가됨
조우영 (토론 | 기여)
편집 요약 없음
잔글편집 요약 없음
1번째 줄:
'''Tcl''' (원래 "Tool Command Language"에서 왔지만 관례적으로 "TCL"이 아니라 "Tcl"이라고 쓰며 "티클" 또는 "티씨엘"<ref>''Tcler's Wiki [http://wiki.tcl.tk/11902 Tcl vs. TCL]''</ref>로 발음한다.)은 [[스크립트 언어]]로써 존 오스터하우트가 만들었다. 처음에 같이 일하던 프로그래머들이 어플리케이션응용 프로그램에 포함시키기 위한 (조악한) 언어를 직접 만들며 좌절하는 모습을 보고 만들었다고 하지만, Tcl은 빠르게 인기를 얻었다. 비교적 배우기 쉽다고 알려져있지만알려져 있지만 충분히 강력하다. 보통 [[빠른 프로토타이핑]], 스크립트 프로그램, GUI 및 테스팅에 많이 사용된다. 임베디드 플랫폼에서도 광범위하게 사용되며 Tcl 언어 전체 또는 그 작은 일부분만 떼어낸 버전을 이용하기도 한다. 또한 [[공용 게이트웨이 인터페이스|CGI]]와 [[IRC 봇]]을 만드는데도만드는 데에도 사용되고 사용되고있다있다.
 
Tcl과 [[Tk (툴킷)|Tk]] [[위젯 툴킷|GUI 툴킷]]을 묶어서 '''Tcl/Tk'''라고 자주 부른다.
8번째 줄:
* 언어 구조를 포함해서 모든 것은 [[명령어_(프로그래밍_언어)|명령어]]이며, [[전위 표기법]]으로 표현한다.
* 명령어는 [[가변인자]]를 받을 수 있다.
* 모든 것은것을 동적으로 재정의되고재정의하고 오버라이드될오버라이드할 수 있다.
* 모든 [[자료형]]은 [[부호_(통신)|부호]]를 포함한 [[문자열]]로써 다루어진다다룬다.
* 극히 간단한 [[문법 (프로그래밍 언어)|문법]] 규칙.
* [[인터넷 소켓|소켓]]과 [[컴퓨터 파일|파일]]에 대해 [[이벤트 구동 방식]] 인터페이스를 가지고 있다. 시간 기반 이벤트 및 사용자 정의 이벤트가 모두 가능하다.
* 유연한 [[스코프]]를 지원해서, lexical (static) 스코프가 기본이지만 uplevel과 upvar는 proc이 둘러싸고있는 함수의 스코프까지 작용할 수 있도록 허용한다.
* 모든 명령어가 실행 후 반환하는 예외 코드를 이용한 간단한 예외 처리
* Tcl에 정의된 모든 명령어는 잘못된 사용에 대해 의미있는 에러오류 메시지를 만들어낸다.
* [[C (프로그래밍 언어)|C]], [[C++]], [[자바 (프로그래밍 언어)|자바]] 및 Tcl을 통해 바로 확장확장할 가능함수 있다.
* [[인터프리터]] 언어이지만 [[바이트코드]]를 이용하여 동적인 수정이 가능한 특성을 유지하면서 속도가 빨라짐.
* 1999년에 처음 릴리즈된출시한 완전한 [[유니코드]] (3.1) 지원.
* 플랫폼 독립적: [[Win32]], [[Unix|UNIX]], [[Linux]], [[매킨토시|애플 매킨토시]], 등.
* 윈도우([[GUI]]) 인터페이스 [[Tk 툴킷|Tk]]와 밀접한 결합.
33번째 줄:
== 예제 ==
 
아래 예제는 아무 Tcl 쉘에셸에 붙여넣어도 실행 가능한 간단한 코드이다.
 
=== 수 더하기 ===