4P by jaypark 12시간전 | ★ favorite | 댓글 3개

한국어 조사와 서술어를 문법 요소로 활용하는 실험적 프로그래밍 언어.
기존 언어의 키워드를 한글로 번역하는 방식이 아니라,
한국어 화자가 읽고 쓰는 흐름에 가까운 표면 문법을 목표로 한다.
Rust로 구현, WebAssembly 브라우저 플레이그라운드 포함.

코딩 처음 배울 때부터 상상만 해봤던 건데, 코덱스 도움 받아서 이렇게 만들어보게 됐습니다.
실용성은 아마 없을 것 같고.. 이런저런 문법들을 실험 중입니다.

핵심은 "한글 키워드 치환"이 아니라 한국어 문장 흐름을 살리는 거였는데,
예를 들면 이런 코드가 됩니다:

이름은 "철수"이다.  
나이는 20이다.  
  
나이 > 19이면  
  "성인이다"를 출력한다.  
아니면  
  "미성년자이다"를 출력한다.  

조사가 문법적으로 의미를 갖습니다.
은/는은 바인딩, 을/를은 대상, 는 속성 접근, 으로는 변환 프레임이에요.
그래서 합은 7 더하기 8이다결과는 5의 제곱이다 같은 것도 됩니다.

함수도 한국어 문장 형태로 정의하고 호출합니다:

인사만들기 함수는 이름을 받아  
  "안녕, " + 이름 + "!"을 돌려준다.  
  
인사문장은 "지음"으로 인사만들기이다.  

캔버스 그래픽도 됩니다:

그림판에 { 배경색: "#f6efe2" }으로 지우기.  
그림판에 { x: 120, y: 80, 색: 빨강 }으로 점찍기.  

내부적으로는 Smalltalk 스타일의 메시지 전송 모델을 쓰고 있어서,
표면은 한국어인데 의미 구조는 꽤 엄격합니다.

Rust로 만들었고, wasm-pack으로 브라우저 플레이그라운드도 돌아갑니다.
하노이탑 캔버스 데모까지는 되는 상태입니다.

아직 v0.1이라 부족한 게 많지만, 피드백 주시면 감사하겠습니다.

오 재밌어 보입니다! 한국어 문법은 엄격하게 사용되나요? 아니면 어느 정도의 융통성이 있나요?

와 제 첫 프로그래밍 언어가 창조였는데...!

와 멋진 프로젝트 입니다...