앰버 스몰톡
Amber Smalltalk![]() 호박에 갇힌 고대의 날아다니는 곤충입니다. | |
원저작자 | 니콜라스 페튼 |
---|---|
개발자 | 오렌지 커뮤니티 |
초기 릴리즈 | 2011년 9월 13일, | 전(
안정된 릴리스 | 2021년 2월 23일 0.30.0, [1] 전( |
저장소 | lolg |
기입처 | Smalltalk, JavaScript |
운영 체제 | 크로스 플랫폼 |
플랫폼 | 웹 브라우저 |
이용가능기간: | 영어 |
유형 | 객체 지향 프로그래밍 언어, IDE |
면허증. | MIT |
웹 사이트 | www |
Amber Smalltalk(이전 이름은 Jtalk)는 웹 브라우저의 JavaScript 런타임에서 실행되는 Smalltalk-80 언어의 구현입니다.Smalltalk 프로그래밍 [2]언어를 사용하여 클라이언트 측 개발을 가능하게 합니다.앰버의 프로그래밍 환경은 헬리오스라고 [3]불립니다.
주요 기능
Amber에는 클래스 브라우저, Workspace, 스크립트, 객체 검사기 및 디버거가 포함된 통합 개발 환경(IDE)이 포함되어 있습니다.앰버는 컴파일러를 포함한 자체(셀프호스팅)로 작성되며 자바스크립트로 컴파일되어 [4]자바스크립트와 일대일로 매핑됩니다.이 JavaScript와의 일대일 매핑은 Amber를 Paro, Seaside, Squak과 [2]같은 다른 Smalltalk 변종과 구별합니다.앰버 프로젝트를 개발하려면 도구를 실행하기 위해 Node.js가 필요합니다.도입된 프로젝트는 브라우저만 실행하면 됩니다.Amber는 JavaScript로의 매핑이 편리하여 컴파일된 코드가 빠르게 실행되므로 바이트 코드 가상 머신에서 느리게 실행되지 않습니다.
역사
앰버는 원래 니콜라스 페튼에 [5]의해 2011년에 만들어졌다.Amber는 Avi [5][6]Bryant가 만든 Clamato라는 이름의 초기 브라우저 프로젝트의 영향을 받았습니다.Amber와 Clamato는 모두 해석식 문법(PEG) 라이브러리를 사용하여 Smalltalk 소스 코드를 해석합니다.Amber는 David Majda가 작성한 JavaScript 기반의 PEG.js 라이브러리를[7][8] 사용합니다.Clamato는 Lukas Renggli가 [5]쓴 Smalltalk 기반 라이브러리인 PetitParser를 사용합니다.Clamato와 Amber는 둘 다 자바스크립트를 [5][9]통해 웹 브라우저에서 실행되는 Morphic의 Lively Kernel 구현을 개발하는 Dan Ingalls의 이전 작업에 영향을 받았습니다.
버전 0.12.0 이후 오렌지 모듈은 비동기 모듈 정의(AMD)[10]로 컴파일됩니다.버전 0.12.6 이후 개발 도우미 명령줄 인터페이스(CLI) 도구는 전용 모듈로 압축 해제되어 npm부터 설치할 수 있습니다.@ambers/cli
프로젝트와 자바스크립트 생태계(npm, grunt)의 셋업은 이 CLI 툴을 사용하여 대폭 심플화됩니다.amber init
몇 가지 [11]질문에 대답할 수 있습니다.2018년 8월부터 '오렌지 초기화' 프로젝트 발판을 간소화하여 더 이상 bower를 사용하지 않고 npm만을 기반으로 프로젝트 전체가 npm 조직 하에 있음@ambers
이것에 의해, JavaScript [12]의 경험이 적은 유저에게 있어서, Amber Smalltalk 의 설정이 용이하게 됩니다.
인스톨
최신의 순서에 대해서는, https://lolg.it/amber/amber 를 참조해 주세요.
오렌지를 설치하려면 Git이 설치되어 있지 않은 경우 먼저 설치해야 합니다.다음 명령어는 [3]오렌지를 설치합니다.
# macOS 및 Linux의 경우 npm config set prefix=~/npm export PATH="$PATH:$HOME/npm/bin" # .patrc npm install -grunt-init @ambers/cli 명령어 두 개가 필요합니다.
새 프로젝트를 만들려면 다음과 같이 적습니다.
# 빈 프로젝트 dir mkdir example-project cd example-project # 새 앰버 프로젝트 앰버 초기화 생성 및 초기화
「init」의 순서는, 프로젝트에 관한 몇개의 질문으로 이어집니다.대부분의 경우 기본 답변을 설정할 수 있습니다.다음의 순서는, 서버를 기동하는 것입니다.
호박 서브
그 후 타이핑http://localhost:4000
어플리케이션에 접속합니다.대부분의 브라우저는 기본적으로 Helios IDE 팝업을 차단하므로 Helios IDE 팝업을 표시하려면 브라우저 설정을 변경해야 할 수 있습니다.
외부 JavaScript 라이브러리 통합
Npm 소프트웨어를 사용하여 광범위한 JavaScript 라이브러리에 액세스할 수 있습니다.라이브러리는, 다음의 4개의 [3]순서로 통합할 수 있습니다.
- npm을 사용하여 라이브러리를 설치합니다.
- npm 패키지에 대한 'local.amd.json' 파일이 없는 경우 프로젝트 루트에 'libname.amd.json' 파일을 만듭니다.
- grunt devel을 실행합니다(어플리케이션을 전개할 준비가 되어 있는 경우는 grunt deploy).
- 응용 프로그램 패키지의 #imports:에 'libname'을 추가합니다.
도입
실행 시grunt deploy
오렌지 프로젝트는 Require를 사용하여 패키지화되어 있습니다.JS는 최소한 몇 개의 파일로만 구성됩니다.index.html
그리고.the.js
. 다른 정적 웹 페이지와 마찬가지로 이러한 페이지를 정적으로 호스트할 수 있습니다.
「 」를 참조해 주세요.
레퍼런스
- ^ "Release version 0.30.0". lolg.it. Retrieved 2021-03-25.
- ^ a b Smalltalk 구현(Smalltalk 사투리를 설명하는 간단한 비교 요약)
- ^ a b c Eng, Richard (2015-06-09). "A Gentle Introduction to Amber: Engaging in Smalltalk with Her, Reads Like English, and It's Still Succinct!, "It's alive! It's alive!", The All-seeing Helios, Testing D3". Medium. Retrieved 2016-02-07.
- ^ Petton, Nicolas. "Amber Smalltalk". amber-lang.net. Retrieved 2016-01-30.
- ^ a b c d Schuster, Werner (August 22, 2011). "Smalltalk IDEs Come to the Browser: Jtalk, tODE, Lively Kernel 2.0". Retrieved October 20, 2011.
- ^ "Clamato". (Clamato Smalltalk 프로젝트 웹사이트)
- ^ Majda, David (2010–2016). "PEG.js: Parser Generator for JavaScript". PEG.js.org. David Majda. Retrieved 13 November 2016.
- ^ Petton, Nicolas (13 September 2011). "Bye, bye Jtalk... Hello Amber!". Google Groups. Google, Inc. Retrieved 13 November 2016.
... we are now making a first release humbly numbered 0.9. We are also taking the opportunity to pick a slicker name for Jtalk - Amber!
- ^ Shuster, Werner (June 22, 2010). "Dan Ingalls on the History of Smalltalk and the Lively Kernel". Retrieved October 26, 2011.
- ^ "amber-smalltalk/amber". GitHub. Retrieved 2016-01-30.
- ^ "amber-smalltalk/amber". GitHub. Retrieved 2016-01-30.
- ^ Petton, Nicolas. "Installing Amber". docs.amber-lang.net. Retrieved 2016-01-30.
외부 링크
- 공식 웹사이트
- 웹 개발자인 Nicolas Petton을 위한 Smalltalk인 Jtalk가 ESUG 2011(유럽 Smalltalk 사용자 그룹 컨퍼런스)에서 발표되었습니다.에든버러, 스코틀랜드, 영국 (2011년 8월)