스몰토크

위키百科, 우리 모두의 百科事典.

스몰토크
패러다임 客體 志向
設計者 앨런 케이 (Alan Kay), Dan Ingalls, 아델 골드버그 (Adele Goldberg)
發表日 1972年 (52年 前) ( 1972 ) (1969年에 開發 始作)
最近 버전 Smalltalk-80 version 2
最近 버전 出市日 1980年 (44年 前) ( 1980 )
資料型 體系 動的
主要 具現體
스퀵 , 비주얼웍스 , visualage for smalltalk
影響을 받은 言語
리스프 , 時뮬라 , 스케치 패드 , 로고 (프로그래밍 言語)
影響을 준 言語
오브젝티브 C , 자바 , 스크래치

스몰토크 (Smalltalk)는 動的 兄 , 反映 을 支援하는 客體 志向 프로그래밍 言語 이다.

歷史와 影響 [ 編輯 ]

스몰토크는 제록스 파크 (PARC)에서 앨런 케이 , 댄 잉갤스 , 테드 캘러 , 아델 골드버그 가 만들었다. 1970年代의 리스프 , 로고 , 스케치패드 時뮬라 等의 影響을 받았으며, 스몰토크-80부터 外部에 公開되어 퍼지기 始作했다. 스몰토크는 Ruby , 오브젝티브-C , Self , 자바 , Dylan , 애플스크립트 , 파이썬 , Scala , 펄 6 , Common List Object System 等의 프로그래밍 言語에 影響을 주었으며, 그 外에 매킨토시 그래픽 使用者 인터페이스 에도 影響을 주었다.

最初로 GUI 를 提供하는 言語였으며, 이는 마우스 가 스몰토크와 함께 제록스 파크 (PARC)에서 硏究되었던 것과도 關聯이 있다. 現在 스몰토크를 使用하는 人口는 다른 客體志向 言語의 出現으로 少數에 不過하나, 루비 를 비롯한 動的資料型 客體 志向 言語가 關心을 받고 있다.

最近에는 詩사이드 (Seaside)의 出現으로 HTML을 全혀 쓰지 않는 次世代 웹 프로그래밍의 비전을 보여주고 있기도 하다.

特徵 [ 編輯 ]

스몰토크는 다음과 같은 特徵들을 가지고 있다.

  • GUI 環境 , 컴파일러, 파서, 가비지 컬렉터가 스몰토크 코드로 되어 있다.
  • 모든 소스 코드가 露出되어 있으며, 編輯이 可能하다.
  • 純粹 客體志向 言語이다. C++ 자바 와는 달리 遠視 資料型이 없고, 모든 精髓, 不動少數, 文字列, 블록을 包含한 모든 것이 客體며 클래스가 있다.
  • 命令語 블록( 無名 函數 )을 提供한다.
  • 클래스가 客體이다. 大部分의 프로그래밍 言語에서는 클래스는 政敵 領域에 定義되고, 客體는 런타임, 卽 動的 領域에 保管된다. 하지만 스몰토크의 客體들은 모든 狀態가 스몰토크 假像機械 속에서 “이미지”라 불리는 構造로 表現·貯藏된다.
  • 이미지基盤이다. 소스코드는 소스파일에 保管되는 것이 아니라 이미지(메모리의 直列火)로서 스냅샷 파일 속의 客體로서 保管된다.

스몰토크는 言語的 特徵으로 인하여 獨特한 開發文化를 가지고 있는데, 그것은 現在의 開發文化로도 傳播되었다.

Hello, world! 프로그램 [ 編輯 ]

Transcript
 show:
 'Hello, world!'
.

具現 [ 編輯 ]

  • 스퀵 (Squeak)
  • 비주얼웍스(VisualWorks)
  • 돌핀 스몰토크(Dolphin Smalltalk)
  • 앰브라이 스몰토크(Ambrai Smalltalk)
  • F 스크립트(F-Script)

關聯 團體 [ 編輯 ]

  • 유럽 스몰토크 使用者 그룹 (ESUG, European Smalltalk User Group)
  • 뷰포인트 硏究所 (VPRI, Viewpoint Research Institute)
  • 하소 플라토 硏究所(HPI, Hasso Plato Institute)

같이 보기 [ 編輯 ]

外部 링크 [ 編輯 ]