Skip to content

Instantly share code, notes, and snippets.

@cametan001
Created May 6, 2010 08:16
Show Gist options
  • Save cametan001/391918 to your computer and use it in GitHub Desktop.
Save cametan001/391918 to your computer and use it in GitHub Desktop.
cd ~/
2 compiler notes:
lol-production-code.lisp:265:1:
error:
(during macroexpansion of (DEFMACRO! DLAMBDA ...))
The function O!-SYMBOL-P is undefined.
lol-production-code.lisp:357:17:
read-error:
SB-INT:SIMPLE-READER-ERROR at 8903 (line 357, column 17) on #<SB-SYS:FD-STREAM for "file /home/cametan/lol-production-code.lisp" {B138C51}>:
no dispatch function defined for #\`
Compilation failed.
; compiling file "/home/cametan/lol-production-code.lisp" (written 06 MAY 2010 02:18:39 PM):
; file: /home/cametan/lol-production-code.lisp
; in: DEFMACRO! DLAMBDA
; (DEFMACRO! DLAMBDA (&REST DS)
; `(LAMBDA (&REST ,G!ARGS)
; (CASE (CAR ,G!ARGS) (SB-IMPL::BACKQ-COMMA-AT (MAPCAR # DS)))))
;
; caught ERROR:
; (during macroexpansion of (DEFMACRO! DLAMBDA ...))
; The function O!-SYMBOL-P is undefined.
;
; compilation unit aborted
; caught 1 fatal ERROR condition
; caught 1 ERROR condition
; compilation aborted because of fatal error:
; READ failure in COMPILE-FILE:
; SB-INT:SIMPLE-READER-ERROR at 8903 (line 357, column 17) on #<SB-SYS:FD-STREAM for "file /home/cametan/lol-production-code.lisp" {B138C51}>:
; no dispatch function defined for #\`
; compilation aborted after 0:00:00.306
大阪> (defparameter 支店長 1) ;大阪の支店長を 1 と定義
支店長
大阪> (in-package :東京) ;東京へ移動
#<PACKAGE "東京">
東京> (defparameter 支店長 '(a b c)) ;東京の支店長を (a b c) と定義
支店長
東京> (in-package :大阪) ;大阪へ移動
#<PACKAGE "大阪">
大阪> 支店長 ;大阪の支店長を評価すると 1 になる
1
大阪> (in-package :東京) ;東京へ移動
#<PACKAGE "東京">
東京> 支店長 ;東京の支店長を評価すると (a b c) になる
(A B C)
東京>
東京> (in-package :大阪) ;大阪へ移動
#<PACKAGE "大阪">
大阪> (export '支店長) ;シンボル支店長をエクスポートする
T
大阪> (in-package :東京) ;東京へ移動
#<PACKAGE "東京">
東京> 大阪:支店長 ;大阪の支店長を参照する
1
東京>
東京> (defpackage :名古屋 (:use :cl) ;名古屋パッケージを定義
(:import-from :大阪 :支店長)) ;大阪パッケージからシンボル支店長をインポート
#<PACKAGE "名古屋">
東京> (in-package :名古屋) ;名古屋へ移動
#<PACKAGE "名古屋">
名古屋> 支店長 ;名古屋の支店長は大阪の支店長と同一人物?
1
名古屋> (in-package :大阪) ;大阪へ移動
#<PACKAGE "大阪">
大阪> 支店長 ;大阪の支店長は名古屋の支店長と同じ値を返す
1
大阪> (in-package :名古屋) ;名古屋へ移動
#<PACKAGE "名古屋">
名古屋> (eq '支店長 '大阪:支店長) ;名古屋の支店長と大阪の支店長は同一人物!
T
名古屋> (in-package :東京) ;東京へ移動
#<PACKAGE "東京">
東京> (eq '支店長 '大阪:支店長) ;東京の支店長は大阪の支店長とは別人!
NIL
東京>
CL-USER> (intern "HOGE")
HOGE
:INTERNAL
CL-USER>
CL-USER> (asdf:operate 'asdf:load-op :cl-ppcre) ; cl-ppcre を asdf:load-op を利用してロードする
; loading system definition from
; /usr/share/common-lisp/systems/cl-ppcre.asd into #<PACKAGE "ASDF0">
; registering #<SYSTEM :CL-PPCRE {B16B109}> as CL-PPCRE
; registering #<SYSTEM :CL-PPCRE-TEST {B30F529}> as CL-PPCRE-TEST
NIL
CL-USER> (use-package :cl-ppcre) ; use-package を利用して、 cl-ppcre の機能を用いる
T
CL-USER>
東京> (defpackage :大阪 (:use :cl)) ;大阪パッケージを定義
#<PACKAGE "大阪">
東京> (in-package :大阪) ;大阪パッケージに変更
#<PACKAGE "大阪">
大阪> '支店長 ;シンボル支店長を大阪パッケージにインターン
支店長
大阪>
CL-USER> 'hoge
HOGE
CL-USER>
CL-USER> (defpackage :東京 (:use :common-lisp)) ;東京パッケージを定義
#<PACKAGE "東京">
CL-USER> (in-package :東京) ;東京パッケージに変更
#<PACKAGE "東京">
東京> '支店長 ;シンボル支店長を東京パッケージにインターン
支店長
東京>
CL-USER> (require :asdf) ; asdf を呼び出す
NIL
CL-USER> (require :asdf-install) ; asdf-install を呼び出す
("ASDF-INSTALL")
CL-USER> (asdf-install:install :cl-ppcre) ; cl-ppcre を asdf-install:install を使ってインストールする
Install where?
1) System-wide install:
System in /usr/lib/sbcl/site-systems/
Files in /usr/lib/sbcl/site/
2) Personal installation:
System in /home/cametan/.sbcl/systems/
Files in /home/cametan/.sbcl/site/
-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment