PHP 인터프리터로, 웹 개발에 특히 적합한 범용 스크립팅 언어입니다.
mattwparas/steel
Rust로 구현한 임베디드·확장형 Scheme 방언으로, 독립 실행형 REPL과 바이트코드 VM을 제공합니다.
- 스타
- 2,629
- 포크
- 143
- 열린 이슈
- 87
- 마지막 커밋
- 그저께
어떤 프로젝트인가요?
Steel은 Rust로 작성된 Scheme 인터프리터로, 독립 실행형 인터프리터와 REPL로 실행하거나 Rust 애플리케이션에 임베드할 수 있습니다. 언어는 바이트코드 가상 머신으로 구현되어 있으며, 대부분 R5RS를 준수하고 R7RS 지원은 진행 중입니다.
Racket 스타일의 require와 provide를 사용하는 모듈 지원과 syntax-rules 및 syntax-case 매크로가 포함되어 있습니다. 고차 계약과 리스트, 벡터, 해시맵, 해시셋 같은 내장 불변 자료 구조도 제공합니다.
네이티브 Rust 함수와 구조체를 임베딩이나 FFI를 통해 Steel 코드에 노출할 수 있습니다. 프로젝트에는 패키지 관리자, 언어 서버, 표준 라이브러리도 포함되어 있으며, 아직 1.0 이전 버전이므로 API가 변경될 수 있습니다.
핵심 기능
- 01바이트코드 가상 머신으로 구현된, 대부분 R5RS를 준수하는 Scheme
- 02Racket과 유사하게 require와 provide를 사용하는 모듈 시스템
- 03syntax-rules 및 syntax-case 매크로 지원
- 04네이티브 Rust 함수와 구조체를 호출하기 위한 임베딩 및 FFI
- 05고차 계약과 내장 불변 리스트, 벡터, 해시맵, 해시셋
활용 사례
- Rust 애플리케이션에 스크립팅 언어 추가
- Scheme 및 인터프리터 설계를 학습하거나 실험
- Rust 코드를 호출하는 설정 스크립트 또는 확장 스크립트 작성
빠른 시작
- 1
Rust 설치하기(Steel 빌드에 필요)
- 2
저장소 클론하기
- 3
cargo로 REPL 실행하기
cargo run
사용 전 알아둘 점
- API는 아직 1.0 이전 버전이므로 언제든 변경될 수 있습니다.
- R5RS를 대부분 준수하지만 완전하지는 않습니다. let-syntax는 지원되지 않으며 R7RS 지원은 아직 진행 중입니다.
포함된 컬렉션
토픽
자주 묻는 질문
- steel은(는) 무엇인가요?
- Rust로 구현한 임베디드·확장형 Scheme 방언으로, 독립 실행형 REPL과 바이트코드 VM을 제공합니다. Steel은 Rust로 작성된 Scheme 인터프리터로, 독립 실행형 인터프리터와 REPL로 실행하거나 Rust 애플리케이션에 임베드할 수 있습니다. 언어는 바이트코드 가상 머신으로 구현되어 있으며, 대부분 R5RS를 준수하고 R7RS 지원은 진행 중입니다.
- steel은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- steel은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- steel은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. steel의 마지막 커밋은 2026년 10월 22일입니다.
- steel은(는) 어디에 사용할 수 있나요?
- Rust 애플리케이션에 스크립팅 언어 추가 Scheme 및 인터프리터 설계를 학습하거나 실험 Rust 코드를 호출하는 설정 스크립트 또는 확장 스크립트 작성
- steel는 어떻게 설치하나요?
- Rust 설치하기(Steel 빌드에 필요) 저장소 클론하기 cargo로 REPL 실행하기: cargo run
- steel은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/mattwparas/steel
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Emacs Lisp 인터프리터를 기반으로 확장과 사용자화가 가능하며, 자체 문서화 기능과 실시간 화면 갱신을 지원하는 GNU Emacs 텍스트 편집기입니다.
Markdown 파일을 선택·필터링·변환하는 jq 스타일 명령줄 도구이자 쿼리 언어입니다.
Rust 프로그래밍 언어의 메인 소스 저장소로, 컴파일러와 표준 라이브러리, 문서를 포함합니다.
Sway는 Fuel 블록체인에서 스마트 컨트랙트를 작성하기 위한 Rust 영감의 프로그래밍 언어입니다.
순수 Go로 작성된 ECMAScript 5.1 JavaScript 엔진으로, Go 애플리케이션에 JS 실행 기능을 임베딩할 수 있습니다.