CommonLisp에서 GUI 프로그래밍~빈 윈도우~
3462 단어 RaspberryPicommon-lispLTk
소개
CommonLisp에서 GUI 응용 프로그램을 만들고 싶었고 여러가지 조사하고 있었는데, Ltk라는 편리한 것을 발견했습니다.
Ltk는 CommonLisp에서 쉽게 GUI 프로그래밍을 수행하는 것으로, OS를 불문하고 이용할 수 있다는 이점도 있습니다.
이것이라면 RaspberryPi의 Raspbian에서도 움직인다!
그렇다면 바로 만들어 보았습니다.
Tcl/tk 설치
Ltk는 내부적으로 Tcl/Tk를 호출하므로 Tcl/Tk가 필요합니다.
그래서, 우선은 이하의 커멘드로 Tcl/Tk를 인스톨 합니다.
sudo apt-get install tcl tk
패키징
ltk를 Quicklisp로로드하고 패키지 정의
packages.lisp(ql:quickload "ltk")
(defpackage :cl-ltk
(:use :common-lisp :ltk))
Quicklisp는 아래를 참조하여 설치하십시오.
· Quicklisp 베타
빈 윈도우 프로그램 작성
이번에는 아무것도하지 않는 빈 창을 만듭니다.
basewindow.lisp;; Load packages
(load "packages.lisp" :external-format :utf-8)
;; Go into the defined package
(in-package :cl-ltk)
;; Main function
(defun main ()
(with-ltk ()
(wm-title *tk* "BaseWindow")
(bind *tk* "<Alt-q>"
(lambda (event)
(setq *exit-mainloop* t)))))
;; Execution
(main)
실행
SBCL을 시작하고 다음 명령으로 실행
(load "basewindow.lisp" :external-format :utf-8)
이하 실행중인 모습
Raspbian에서 실행했습니다.
종료할 때는 "Alt-q"혹은 오른쪽 상단의 버튼 버튼으로 닫습니다.
마지막으로
CommonLisp에서도 GUI 응용 프로그램을 만들 수있었습니다.
생각보다 쉽고, C/C++ & Win32API라든지 만드는 것보다 훨씬 짧은 스텝수로 작성할 수 있는 것에 놀랐습니다.
글쎄, 지금은 C/C++ & Win32API로 GUI를 만드는 사람은 그렇게 없다고 생각하지만 (웃음)
이것으로 RaspberryPi에서도 GUI 어플리케이션을 작성할 수 있으므로, 전자 공작과 조합해도 여러가지 할 수 있을 것 같네요.
이번 소스 코드도 Github에서 공개하고 있습니다.
· Github
Reference
이 문제에 관하여(CommonLisp에서 GUI 프로그래밍~빈 윈도우~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fireflower0/items/d6b1cd63c417c7134187
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Ltk는 내부적으로 Tcl/Tk를 호출하므로 Tcl/Tk가 필요합니다.
그래서, 우선은 이하의 커멘드로 Tcl/Tk를 인스톨 합니다.
sudo apt-get install tcl tk
패키징
ltk를 Quicklisp로로드하고 패키지 정의
packages.lisp(ql:quickload "ltk")
(defpackage :cl-ltk
(:use :common-lisp :ltk))
Quicklisp는 아래를 참조하여 설치하십시오.
· Quicklisp 베타
빈 윈도우 프로그램 작성
이번에는 아무것도하지 않는 빈 창을 만듭니다.
basewindow.lisp;; Load packages
(load "packages.lisp" :external-format :utf-8)
;; Go into the defined package
(in-package :cl-ltk)
;; Main function
(defun main ()
(with-ltk ()
(wm-title *tk* "BaseWindow")
(bind *tk* "<Alt-q>"
(lambda (event)
(setq *exit-mainloop* t)))))
;; Execution
(main)
실행
SBCL을 시작하고 다음 명령으로 실행
(load "basewindow.lisp" :external-format :utf-8)
이하 실행중인 모습
Raspbian에서 실행했습니다.
종료할 때는 "Alt-q"혹은 오른쪽 상단의 버튼 버튼으로 닫습니다.
마지막으로
CommonLisp에서도 GUI 응용 프로그램을 만들 수있었습니다.
생각보다 쉽고, C/C++ & Win32API라든지 만드는 것보다 훨씬 짧은 스텝수로 작성할 수 있는 것에 놀랐습니다.
글쎄, 지금은 C/C++ & Win32API로 GUI를 만드는 사람은 그렇게 없다고 생각하지만 (웃음)
이것으로 RaspberryPi에서도 GUI 어플리케이션을 작성할 수 있으므로, 전자 공작과 조합해도 여러가지 할 수 있을 것 같네요.
이번 소스 코드도 Github에서 공개하고 있습니다.
· Github
Reference
이 문제에 관하여(CommonLisp에서 GUI 프로그래밍~빈 윈도우~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fireflower0/items/d6b1cd63c417c7134187
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
(ql:quickload "ltk")
(defpackage :cl-ltk
(:use :common-lisp :ltk))
이번에는 아무것도하지 않는 빈 창을 만듭니다.
basewindow.lisp
;; Load packages
(load "packages.lisp" :external-format :utf-8)
;; Go into the defined package
(in-package :cl-ltk)
;; Main function
(defun main ()
(with-ltk ()
(wm-title *tk* "BaseWindow")
(bind *tk* "<Alt-q>"
(lambda (event)
(setq *exit-mainloop* t)))))
;; Execution
(main)
실행
SBCL을 시작하고 다음 명령으로 실행
(load "basewindow.lisp" :external-format :utf-8)
이하 실행중인 모습
Raspbian에서 실행했습니다.
종료할 때는 "Alt-q"혹은 오른쪽 상단의 버튼 버튼으로 닫습니다.
마지막으로
CommonLisp에서도 GUI 응용 프로그램을 만들 수있었습니다.
생각보다 쉽고, C/C++ & Win32API라든지 만드는 것보다 훨씬 짧은 스텝수로 작성할 수 있는 것에 놀랐습니다.
글쎄, 지금은 C/C++ & Win32API로 GUI를 만드는 사람은 그렇게 없다고 생각하지만 (웃음)
이것으로 RaspberryPi에서도 GUI 어플리케이션을 작성할 수 있으므로, 전자 공작과 조합해도 여러가지 할 수 있을 것 같네요.
이번 소스 코드도 Github에서 공개하고 있습니다.
· Github
Reference
이 문제에 관하여(CommonLisp에서 GUI 프로그래밍~빈 윈도우~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fireflower0/items/d6b1cd63c417c7134187
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
(load "basewindow.lisp" :external-format :utf-8)
CommonLisp에서도 GUI 응용 프로그램을 만들 수있었습니다.
생각보다 쉽고, C/C++ & Win32API라든지 만드는 것보다 훨씬 짧은 스텝수로 작성할 수 있는 것에 놀랐습니다.
글쎄, 지금은 C/C++ & Win32API로 GUI를 만드는 사람은 그렇게 없다고 생각하지만 (웃음)
이것으로 RaspberryPi에서도 GUI 어플리케이션을 작성할 수 있으므로, 전자 공작과 조합해도 여러가지 할 수 있을 것 같네요.
이번 소스 코드도 Github에서 공개하고 있습니다.
· Github
Reference
이 문제에 관하여(CommonLisp에서 GUI 프로그래밍~빈 윈도우~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/fireflower0/items/d6b1cd63c417c7134187텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)