Skip to content

Zero dependency yaksok interpreter written in TypeScript

License

Notifications You must be signed in to change notification settings

tilto0822/yaksok.ts

 
 

Repository files navigation

yaksok.ts

타입스크립트로 구현한 약속 프로그래밍 언어의 인터프리터(zero dependency / runtime agnostic)

왜 만들었나요?

약속 프로그래밍 언어는 교육적으로 훌륭한 언어입니다. 다양한 환경에서 편리하게 약속을 실행할 수 있도록 타입스크립트로 새 런타임을 작성하였습니다.

기준 개발 환경은 Deno(1.38.4)입니다.

아직 Unstable합니다!

현재 런타임은 아직 불안정합니다. 테스트를 진행하며 버그를 찾아 수정하고 있습니다. 버그를 발견하셨다면 이슈를 남겨주세요. 파악된 이슈는 다음과 같습니다:

  1. @(파일 불러오기) 구문이 구현되지 않음
  2. 사칙연산의 우선순위가 잘못됨
  3. 번역(FFI, 자바스크립트 함수를 호출하기) 구문이 구현되지 않음

꾸준히 업데이트를 진행하고 있습니다. 혹시 직접 기여를 하고 싶으시다면 언제든지 PR을 남겨주세요.

테스트해보기

약속 "피보나치" 수
    만약 수 < 3 이면
        결과: 1
    아니면
        결과: (피보나치 (수 - 1)) + (피보나치 (수 - 2))

횟수: 1

반복
    횟수 + "번째 피보나치 수는 " + (피보나치 횟수) + "입니다" 보여주기
    횟수: 횟수 + 1

    만약 횟수 > 10 이면
        반복 그만
약속 과일"을/를 멋있는 " 사람 "와/과 먹기"
    사람 + ": " + 과일 + " 먹음" 보여주기

"사과"를 멋있는 "김철수"와 먹기

Made by Rycont, with ❤️, in 사이버지식정보방

About

Zero dependency yaksok interpreter written in TypeScript

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 100.0%