프로젝트 소개
Edge Python은 Python 하위 집합을 위한 샌드박스형 런타임으로, 단일 패스 SSA 바이트코드 컴파일러와 스레드 코드 스택 가상 머신을 결합합니다. 구현에는 NaN-박스 값, 인라인 캐싱, 슈퍼 명령어 융합, 순수 함수 메모이제이션, 마크-스윕 가비지 컬렉터, 전체 인터프리터 스냅샷, 그리고 커버리지 기반 퍼징이 포함됩니다.
이 언어는 클래스, async/await, 패턴 매칭, 그리고 컴파일 시간에 해석되는 임포트를 지원합니다. 프로그램은 기본적으로 샌드박스에서 작동하며, `edge.json` 모듈 구성을 통해 명시적으로 선언된 경우에만 파일, 네트워크 또는 환경에 접근할 수 있습니다.
배포 대상은 다음과 같습니다:
- `<edge-python>` 커스텀 요소를 통한 WebAssembly 모듈로 브라우저 실행
- macOS, Linux 또는 WSL에 설치된 `edge` 바이너리를 통한 CLI 실행
- `edge build`로 생성된 독립 실행형 컴파일 바이너리
- `edge actor`로 관리되는 협력적 액터 풀
저장소는 여러 구성 요소로 구성됩니다: 루트 크레이트에는 엔진, 렉서, 파서, VM 및 WebAssembly 내보내기가 포함됩니다; `cli/` 디렉터리는 wasmtime에서 `compiler.wasm`을 실행하고 JavaScript 모듈용 StarlingMonkey와 함께 사용되는 `edge` 바이너리를 제공합니다; `std/`는 표준 패키지를 보유합니다; `pdk/`와 `abi/`는 `.wasm` 플러그인 작성 키트를 제공합니다; `lang/`은 엔진 위에 사용자 정의 스크립팅 언어를 구축하는 방법을 보여줍니다; `fuzz/`에는 퍼저가 포함됩니다.
문서, 빠른 시작 가이드, CLI 참조, 모듈 목록, 액터 패턴 및 임베딩 지침은 edgepython.com/docs에서 확인할 수 있습니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.