Lollang (롤랭)
롤랭 문법
https://github.com/riroan/lollang/wiki/lollang-Grammar
롤랭 컴파일러
https://github.com/riroan/lollang
롤랭 playground
옛날에 만든 프로그래밍 언어인데 갑자기 생각나서 남긴다... ㅎㅎ
Introduce.
개발 계기는 엄랭이랑 어쩔랭등 한국어로 된 erostic programming language를 알아서 나도 한번 만들고 싶었다. 무엇을 모티브로 할까 생각하다가 꽤 많이 했던 게임인 리그오브레전드의 채팅을 모티브로 해서 만들게 되었다. 컴파일러 개발 언어는 파싱에 좋은 Python을 사용했고 컴파일러 지식을 몰라서 순수 번역기의 느낌인 컴파일러이다. 롤랭 -> python로 번역한 후 python을 실행하는 식이다.
Lollang.
문법은 위 깃헙 위키에 있고 변수선언, 기본연산, 반복문, 조건문, 함수, 주석을 지원한다. 튜링 완전언어일지는 모르겠다. (그럴리 없겠지...)
최대한 롤 게임 내 채팅에서 나올법한 요소들로 구성했다. 변수명은 한국어, 영어, 숫자 모두 넣어도 되지만 재미를 위해 롤에 관련된 변수명을 쓰는게 좋다. (ex. 갈리오님 갱좀요, 1픽님 캐리좀 ㅠㅠㅠ, 탑님 리쉬좀요)
만들면서 힘들었던건 한국어와 영어의 차이점이다. 프로그래밍언어(python)도 결국 영어를 모티브로 만들었기 때문에 주어 + 동사 + 목적어인 술목구조를 따른다. 하지만 한국어는 주어 + 목적어 + 동사 순서이기 때문에 이것을 해결하는게 좀 힘들었다.
- 한국어 : 나는(주어) 야구를(목적어) 한다.(동사)
- 영어 : I(주어) play(동사) baseball.(목적어)
그래서 print("정글")을 정글 print로 바꾸고 그걸 print->갱좀요 규칙을 적용해 정글 갱좀요 가 되었다.
생각보다 롤 채팅이랑 비슷하고 잘 작동해서 재미있었다.
'프로그래밍 언어 > 취업 필수 언어' 카테고리의 다른 글
[프로그래밍 언어] brainfuck (0) | 2022.04.20 |
---|---|
[프로그래밍 언어] 엄랭 (0) | 2022.04.17 |