문제

AVM2에서 실행할 언어를 만드는 데 관심이 있으며 어디서부터 시작 해야하는지에 대한 조언을 찾고 있습니다. 나는 이것이 결코 사소한 일이 아니라는 것을 알고 있지만, 나는 그것을 시도하고 최소한 그 과정에서 언어 구현에 대해 더 많이 배우고 싶습니다.

나는 Antlr을 엉망으로 만들었고 언어 개발을위한 구문 문제에 대해 읽고 있습니다. 내가 찾고있는 것은 참조/도서를 가져 오는 길에 대한 조언입니다.

예를 들어, 매우 간단한 AVM2 바이트 코드를 생성하고 시작하여 VM에서 실행하도록합니다.

감사

도움이 되었습니까?

해결책

Haxe에 관심이없는 경우 기본적으로 객체를 ABC (Actionscript Byte Code)로 컴파일하는 고유 한 컴파일러를 작성해야합니다. 그만큼 AVM2 개요 ABC와 AVM2의 Adobe에서 구할 수있는 문서는 시작하는 데 도움이됩니다. 상당히 철저한 문서이지만 바이트 코드 지침에서 몇 가지 오타에 대해 경고를 유지하십시오.

또한 SWF 컨테이너의 일부로 Bytecode를 DOABC 태그로 랩핑해야합니다. 당신은 더 많은 정보를 얻을 수 있습니다 SWF 파일 형식 선적 서류 비치.

데이터 구조 (최적화 된 INT 형식 등)를 작성하는 데 헤드 스타트를 원한다면 내가 작업 한 동적 조롱 프로젝트 인 Asmock에서 코드를 자유롭게 확인하십시오. SWF/BYTECODE 생성물은 약간 지저분하지만 IdataOutput 포장지가 있습니다 (SWF, 바이트 코드) 유용 할 수 있습니다.

다른 팁

Adobe의 프로젝트 연금술은 좋은 참조가 될 수 있습니다http://labs.adobe.com/technologies/alchemy/

어떻게 되었습니까? 또한 Java to AVM2 컴파일러를 수행하는 데 관심이 있습니다 ... 게시 된 코드가 있습니까?

보세요 HAXE: AVM을 포함하여 다른 플랫폼을 타겟팅 할 수있는 오픈 소스 언어입니다. SWF 컴파일러 소스 코드를 파헤쳐 영감을 얻을 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top