lisp 로 만들어본 GUI
글쓴이: sugarlessgirl / 작성시간: 토, 2007/12/08 - 12:05오후
새로운 언어를 접할때 광적으로 집착하는 "Hello, World" 의 GUI 버젼을 LISP로 만들어봤습니다. -_-
clisp 에 gtk2 모듈이 들어있더군요,
하지만 데비안 패키지에는 빠진채로 컴파일되어있어서 직접 컴파일 하였습니다.
그냥 gtk의 함수를 1:1 대응 시켜놓은거라서 꽤 lisp 다운 코드는 아닌거 같군용..
clisp 좋네요, 정규표현식, berkely db, fastcgi 등의 쓸만한 확장모듈도 제공해주구요..
인공지능 연구소에서나 써먹을 언어인줄 알았더니, 의외로 활용가치가 있어보이네요
File attachments:
첨부 | 파일 크기 |
---|---|
hello.png | 18.63 KB |
Forums:
lisp 은 emacs 를 개발한
lisp 은 emacs 를 개발한 언어입니다. 인공지능 연구소에서나 활용한다니요~^^
EMACS의 core는 C언어로
EMACS의 core는 C언어로 짜여졌을테고 LISP의 용도는 더 다양합니다.
- CN의 낙서장 / HanIRC:#CN
- 죠커's blog / HanIRC:#CN
궁금한게 있는데요
elisp으로 emacs를 만들고
GUI는 어떻게 한거죠?
Supported Platforms도 다양하던데...
완전 초보라 궁금합니다.
------------------------signature------------------------
Self-Pity
I never saw a wild thing
sorry for itself.
A small bird will drop frozen dead from a bough
without ever having felt sorry for itself.
- David Herbert Lawrence (1885-1930)
이맥스는 C 로 기본
이맥스는 C 로 기본 토대를 만들어 놓고,
아예 LISP 인터프리터를 내장해서 기능을 확장해나간 식입니다.
직접 GUI 를 건드리는 코드들은 C로 짜여져 있겠지요
GTK 의 장점 중
GTK 의 장점 중 하나가, 여러 언어로 바인딩 돼서 자신이 좋아하는 언어를 고를 수 있다는 점이지요.
그런데 그 중에서, GTK+ 2.10 버전을 완벽지원하는 바인딩 언어는 4개입니다.
C++, Java, Perl, Python (참고 : http://www.gtk.org/bindings.html)
데비안에 CL-GTK 패키지가 없는 이유는
그 프로젝트가 공식 릴리즈할 정도로 충분히 성숙되지 않았기 때문일 겁니다.
(참고 : http://tenkan.org/clgtk/)
그런면에서 보면, 개발도 더 활성화되고 API와 예제까지 갖추고 있는 Haskell 쪽에 더 관심이 갑니다.
(참고 : http://haskell.org/gtk2hs/)
사실 언어가 다르더라도 Gtk API는 비슷비슷하기 때문에, 상황에 맞는 언어를 선택하는 것이 무엇보다 더 중요하지요.
저는 Gtk2-perl 로 만들고 있는게 하나 있는데, (Pfed : http://kldp.org/node/88996)
실행속도도 만족스럽고, 컴파일도 필요없고, 객체지향도 되고, 프로그래밍하기도 편리해서,
속도가 critical 한 요소가 아닌 소규모의 프로그램 만들기에는 역시 동적언어인 perl이나 python이 편하다는 생각이 들었습니다.
--------------------Signature--------------------
Light a candle before cursing the darkness.
저도 궁금해서... C++,
저도 궁금해서... C++, Java, Perl, Python 의 gtk 바인딩이 윈도에서도 잘 돌아가는지요? 몇 년 전에 C++ 바인딩과 python 바인딩을 윈도에서 잠깐 테스트해봤는데 상당히 불안했습니다. 간단한 프로그램인데도 잘 죽더군요. 또 윈도에서 한글 입력이나 한글 파일명은 문제가 없는지도 궁금합니다.
다른 언어는
다른 언어는 모르겠고 Perl 에 대해서만 말씀드리면,
사실 저는 윈도에서 돌릴 일이 없어서 신경쓰지 않고 있었는데,
gtk2-perl 로 만든 프로그램을 발견해서
http://www.gcstar.org/
http://home.gna.org/gcfilms/index.en.html
윈도우에서 돌려보니 문제없이 잘 돌아갑니다.
(문제가 많다면 windows 지원을 자신있게 써놨을리가 없겠죠.)
Perl 언어 자체가 유니코드 지원이 잘 지원되므로
`한글 입력이나 한글 파일명'도 당연히 문제가 없을 거라 생각됩니다.
제 답변이 부족하다고 생각하셨다면, `프로그래밍 QnA'에 정식으로 질문올려보세요.
--------------------Signature--------------------
Light a candle before cursing the darkness.
참고
X 관련 Lisp Graphics Toolkit들 리스팅
http://www.cliki.net/Graphics%20Toolkit
-----
오늘 나의 취미는 끝없는, 끝없는 인내다. 1973 法頂
-----
오늘 나의 취미는 끝없는, 끝없는 인내다. 1973 法頂