프로그래밍 언어 개발에 관심 있는 사람들의 모임입니다.
|
2009-01-28 09:50:59
|
프로그래밍 언어 개발에 관심은 있지만, 아직 아무것도 모르시는 분들을 위한 테크트리 매뉴얼을 작성해봅니다. 일단 질문을 하기 전에 이 글들을 먼저 읽어보세요. 언어와 그 구현 (Languages And These Implementations)기본적으로 언어와 그 구현이 다르다는 개념은 LangDev의 글을 이해하고 LangDev에서 질문하거나 토론하기 위한 필수 탑재 대상입니다. 언어와 그것을 구현하는 것은 다릅니다. 이에 관해서는 아침놀 님의 다음 글을 읽어보세요. BNF: 배커스–나우르 표기 (Backus–Naur Form)프로그래밍 언어의 문법은 대개 BNF나 EBNF라는 메타문법(metasyntax) 형식으로 정의/기술됩니다. EBNF는 BNF의 확장된 버전이지만, 서로 표현할 수 있는 문법 집합은 동일합니다. 자세한 것은 링크된 위키백과 항목을 참고하세요. 영역 (Scope)영역(scope)는 프로그래밍 언어 개발을 위해서 이해해야할 필수적인 개념입니다. 영역에 대한 이야기는 아래 글들을 보면 도움이 됩니다. 프로그래밍 패러다임 (Programming Paradigms)프로그래밍 언어의 제작을 위해서는 문법과 그 시멘틱(semantic)을 정의하고, 표준 라이브러리 등을 정의해야 합니다. 시멘틱을 이해하는 데는 여러 프로그래밍 패러다임을 이해하는 것이 도움이 됩니다. (계속 작성중… 의견 받습니다.) 홍민희 님이 2010-06-25 00:54:02에 고쳤습니다. |
트랙백 주소: http://langdev.net/post/trackback/254
Scope까지 나왔으니, 컴파일러/인터프리터의 구분과, 정적/동적 타이핑의 구분은 다르다는 내용은 어떨까요. 의외로, 스크립트==동적이라고 사람들이 많아서.. (이러다가 PL책 만드는거 아닌지 ㄷㄷㄷ). 이건 별개의 의견인데, ‘질문이나 토론 전에 읽어보세요’류의 글은 길수록 안 읽게 되니, 너무 많은 내용을 넣지 않는 것도 좋겠어요. 부담없이 읽을 수 있는 분량으로..
조금 다른 이야기이긴 한데, 예전에 들었던 이야기 중에 “만들고 계신 프로그래밍 언어가 스크립트였나요?” “네.” “실망이군요.” 같은 놀라운 경우도 있었습니다.
도대체 뭐가 문제죠?
대체 뭐가 실망ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
Interpreter였으면 괜찮았을려나? ㅋㅋ. 농담입니다.
와! 아주 좋은 정리글이네요.
초보자들에게 쉽게 이런 사항들을 이해시킬 수 있는 테크트리를 짜는 건 참 어려운 것 같아요. 문제는 저도 초보자…
꽤 된 글이지만 멋지십니다. ;-)
우와.. 저도 많이 배워갈 것 같아서 기쁩니다! ^^
프로그래밍언어를 개발하는건 무척 어려운 일인듯 합니다. 사실 간단한 웹프로그래밍언어를 개발하는데도 무척 많은 고민과 흥분(?)을 가지게되더군요. 1人으로 개발하기엔 무척 남다른 열정이 필요할거라고 봅니다. 간단한 웹언어를 만들기위해서도 많은 노력이 필요하더군요. 혹시.. 언어를 개발중에 있는 분은 없으신가요??
aion rmt ラテール rmt リネージュ2 rmt