Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

; Closure XMLをロード (ql:quickload :cxml) (ql:quickload :cxml-stp) ; Plexippus XPathをロード (ql:quickload :xpath) (let (xml) ; XML読み込み (setf xml (cxml:parse-file "./test.xml" (stp:make-builder))) ; 文字列を取得 (format t "string : ~A~%" (xpath:string-value (xpath:evaluate "/document/string" xml))) ; 数値を取得 (format t "number : ~A~%" (xpath:number-value (xpath:evaluate "/document/number" xml))) ; 複数のノードを処理する (xp
;; Variables for GLisph. (defparameter *font-en* nil) (defparameter *glyph-table-en* nil) (defparameter *text-en* #("text drawing sample")) ;; 初期化処理 (defmethod glut:display-window :before ((window main-window)) ;; Initialize GLisph. (gli:init *width* *height*) (setf *font-en* (gli:open-font-loader #p"./font/Ubuntu-R.ttf")) (setf *glyph-table-en* (gli:make-glyph-table *font-en*)) (loop for text acr
CommonLisp+OpenGLで画像を表示したい 単純なプリミティブを描画できるようになると今度は画像を表示してみたくなる。 方法を探っているうちにRAW画像を読み込んで描画する方法がわかったのでサンプルをつくってみた。 開発環境 Windows 10 x64 Steel Bank Common Lisp 1.3.12 QuickLisp 使用技術 cl-opengl 先述の記事でも利用したCommon LispからOpenGLを利用するためのライブラリ。 これがないとなにもはじまりません。 成果物 参考にしたサイトにあるサンプルをみながらごにょごにょしたサンプルコードをGitHubで公開しています。 動かし方 cd ~/quicklisp/local-project git clone https://github.com/singy15/cl-opengl-image-sample
この記事はLisp Advent Calendar 2017の11日目の記事です。 はじめに 現行のDarkmatterについてはこちらをご覧ください. 開発版のDarkmatter Core/Notebookについては最低限の動作が出来たら追記します. 現在開発中のDarkmatter Core/Notebookには,コード実行の途中経過を手動で保存する機能があります. そのため実行を中断しても途中の結果が見れたり,実行時エラーで死んだりしても途中経過を残しておけば確認が可能です. さらにリアルタイムな可視化にも利用されるため,機械学習の実験などに有用です. 途中経過を保存する領域は単なるhash-tableなので,通常の変数と同様に扱うことが出来ます. トリッキーな実装なので誰得かは分かりませんが,記録として残しておきます. 実装概要 コードの実行はthreadを立ち上げて行う thr
Nextremer Advent Calendar 2017 14日目の記事です Lispという言語に皆さんは触れたことがあるでしょうか? 「神の言語」とも言われるLisp、プログラマーであれば一度は気になったことがあるんじゃないでしょうか NextremerにはLisperのメンバーが若干名おり、そのお陰で最近はたまにNextremerのオフィスでLispの勉強会であるShibuya.lispが開催されたりしています 私自身は今まで一度もLisp系の言語をちゃんと勉強したことがなかったんですが、会社のslackでうっかりCommon Lispやってみたいてきなことを呟いたらLisperの方々が反応してくれました このやり取りをきっかけに、最近じわじわと社内でCommon Lisp熱が高まりつつあります Common Lisp を使おう! Common Lisp環境のセットアップ、Hell
# ! /usr/bin/sbcl --script ; ------------------------------------------------------------------- ; sbcl_get.lisp ; ; Mar/02/2018 ; ; ------------------------------------------------------------------- (format t "*** 開始 ***~%") (load "~/quicklisp/setup.lisp") (ql:quickload :drakma) (defvar out_str) (setf out_str (flexi-streams:octets-to-string (drakma:http-request "http://httpbin.org/get") )) (form
# ! /usr/bin/sbcl --script ; ------------------------------------------------------------------- ; sbcl_post.lisp ; ; Mar/02/2018 ; ; ------------------------------------------------------------------- (format t "*** 開始 ***~%") (load "~/quicklisp/setup.lisp") (ql:quickload :drakma) (defvar out_str) (setf out_str (flexi-streams:octets-to-string (drakma:http-request "http://httpbin.org/post" :method
# ! /usr/bin/ecl -shell ; ------------------------------------------------------------------- ; ecl_get.lisp ; ; Mar/02/2018 ; ; ------------------------------------------------------------------- (format t "*** 開始 ***~%") (load "~/quicklisp/setup.lisp") (ql:quickload :drakma) (defvar out_str) (setf out_str (flexi-streams:octets-to-string (drakma:http-request "http://httpbin.org/get") )) (format t
# ! /usr/bin/ecl -shell ; ------------------------------------------------------------------- ; ecl_post.lisp ; ; Mar/02/2018 ; ; ------------------------------------------------------------------- (format t "*** 開始 ***~%") (load "~/quicklisp/setup.lisp") (ql:quickload :drakma) (defvar out_str) (setf out_str (flexi-streams:octets-to-string (drakma:http-request "http://httpbin.org/post" :method :po
概要 Common Lispの入門記事です。 自己紹介 若草春男。趣味プログラマー。30代男性。他のLispユーザーとの交流はない。つまり、ただの引きこもり。Twitterアカウント: @HaruoWakakusa この記事を書いた動機 以前、オビ=ワン・ケノービに似た名前の技術ライターが関数型プログラミング入門の書籍を出版して関数型言語のお偉方から総スカンを食らい業界を去ったという大事件がありました。自分は全くの無名ですが、こういうファンキーなことをしてもいいんじゃないかと思い立ち、この記事を書くに至りました。 つまりアレです。正確ではないかもしれないけれどもざっくりとした説明をして、Lispというものに親しんで頂きたいと思ったわけです。 単方向リスト Lispを理解するためには単方向リスト(Singly Linked List)というデータ構造を理解する必要があります。単方向リストをJ
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? SBCLメモ: 実装 read ストリームからオブジェクトを読みんで返す src/code/reader.lisp 処理は基本的に%read-preserving-whitespaceに委譲 %read-preserving-whitespace 1文字だけ読んでwith-char-macro-resultに委譲 with-char-macro-result その名の通り、character-macroに関する処理をしている。 引数で最初の文字が来るので、それがcharacter macroのentryなら該当処理を実行する。 get-
はじめに 完全にいたずら書きです。 メモ マニュアル https://github.com/kovisoft/slimv/blob/master/doc/slimv.txt swakn起動, repl: ,c swankの終了: ,Q サーバー立ち上げたままだと前の環境引きずるのでコード書き換えすぎて混乱したときはこれ。 replのクリア: ,- formをtypeしてreplにぶっこむ: ,v describe: ,s hyperspec: ,h undef function: ,u in-package: ,g compile-file: ,F compile(defun): ,D その他メモ 例外機構 https://qiita.com/matsud224/items/722dcc22f1b735adf076 テスト https://qiita.com/asciian/items/1
Common Lisp には関数を逆アセンブルする disassemble 関数があります。 『大熱血!アセンブラ入門』のサンプルコード(C言語)から移植した簡単な関数を逆アセンブルして比較します。 対象とする処理系は以下の3つです。 ECL (Embeddable Common-Lisp) CLISP SBCL (Steel Bank Common Lisp) 実行環境は Windows 10 上の WSL です。SBCL と CLISP は 1803 (17134.81) から動くようになりました。👉参考ツイート ※ disassemble 関数は『実用Common Lisp』読書会で教えて頂きました。Common Lisp が低レイヤも透過的だとは知らなかったので驚きました。 実行例 REPL で関数を定義して逆アセンブルします。 移植元となるC言語の関数です。
(defclass x () ((integer-value :initarg :integer-value :initform 0))) (let ((x (make-instance 'x :integer-value "1"))) (values (slot-value x 'integer-value) (progn (setf (slot-value x 'integer-value) "2") (slot-value x 'integer-value)))) ;;⇒ 1 ;; 2 (ignore-errors (defmethod (setf slot-value) ((value string) (x x) (slot (eql 'integer-value))) (setf (slot-value x slot) (parse-integer value)))) ;;⇒ N
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く