Created
February 5, 2018 21:27
-
-
Save jmercouris/f5cc42b6d8d663df4e387684746c8ca1 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | |
;; Code | |
(defun add-function-to-hook (hook-name function-key function) | |
(let (hook-hash (alexandria:ensure-gethash | |
hook-name | |
*available-hooks* | |
(make-hash-table :test #'equalp))) | |
(setf (gethash function-key hook-hash) function))) | |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | |
;; Error | |
While compiling ADD-FUNCTION-TO-HOOK : | |
Bad initialization form: (ALEXANDRIA.0.DEV:ENSURE-GETHASH | |
HOOK-NAME | |
*AVAILABLE-HOOKS* | |
(MAKE-HASH-TABLE :TEST #'EQUALP)). | |
[Condition of type CCL::COMPILE-TIME-PROGRAM-ERROR] | |
Restarts: | |
0: [CONTINUE] continue compilation ignoring this form | |
1: [RETRY] Retry SLIME interactive evaluation request. | |
2: [*ABORT] Return to SLIME's top level. | |
3: [ABORT-BREAK] Reset this thread | |
4: [ABORT] Kill this thread | |
Backtrace: | |
0: ((:INTERNAL CCL::NX1-COMPILE-LAMBDA) #<CCL::COMPILE-TIME-PROGRAM-ERROR #x302003DBDD3D>) | |
1: (SIGNAL #<CCL::COMPILE-TIME-PROGRAM-ERROR #x302003DBDD3D>) | |
2: (CCL::%ERROR #<CCL::COMPILE-TIME-PROGRAM-ERROR #x302003DBDD3D> NIL 106049983) | |
3: (CCL::NX-ERROR "Bad initialization form: ~S." (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* (MAKE-HASH-TABLE :TEST #'EQUALP))) | |
4: (CCL::NX1-LET :RETURN (LET (HOOK-HASH (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* (MAKE-HASH-TABLE :TEST #'EQUALP))) (SETF (GETHASH FUNCTION-KEY HOOK-HASH) FUNCTION)) #<CCL::LEXICAL-E.. | |
5: (CCL::NX1-COMBINATION :RETURN (LET (HOOK-HASH (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* (MAKE-HASH-TABLE :TEST #'EQUALP))) (SETF (GETHASH FUNCTION-KEY HOOK-HASH) FUNCTION)) #<CCL::L.. | |
6: (CCL::NX1-TRANSFORMED-FORM :RETURN (LET (HOOK-HASH (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* (MAKE-HASH-TABLE :TEST #'EQUALP))) (SETF (GETHASH FUNCTION-KEY HOOK-HASH) FUNCTION)) #<C.. | |
7: (CCL::NX1-TYPED-FORM :RETURN (LET (HOOK-HASH (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* (MAKE-HASH-TABLE :TEST #'EQUALP))) (SETF (GETHASH FUNCTION-KEY HOOK-HASH) FUNCTION)) #<CCL::LE.. | |
8: (CCL::NX1-FORM :RETURN (LET (HOOK-HASH (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* (MAKE-HASH-TABLE :TEST #'EQUALP))) (SETF (GETHASH FUNCTION-KEY HOOK-HASH) FUNCTION)) #<CCL::LEXICAL-.. | |
9: (CCL::NX1-BLOCK :RETURN (BLOCK ADD-FUNCTION-TO-HOOK (LET (HOOK-HASH (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* #)) (SETF (GETHASH FUNCTION-KEY HOOK-HASH) FUNCTION))) #<CCL::LEXICAL-E.. | |
10: (CCL::NX1-COMBINATION :RETURN (BLOCK ADD-FUNCTION-TO-HOOK (LET (HOOK-HASH (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* #)) (SETF (GETHASH FUNCTION-KEY HOOK-HASH) FUNCTION))) #<CCL::LEX.. | |
11: (CCL::NX1-TRANSFORMED-FORM :RETURN (BLOCK ADD-FUNCTION-TO-HOOK (LET (HOOK-HASH (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* #)) (SETF (GETHASH FUNCTION-KEY HOOK-HASH) FUNCTION))) #<CCL.. | |
12: (CCL::NX1-TYPED-FORM :RETURN (BLOCK ADD-FUNCTION-TO-HOOK (LET (HOOK-HASH (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* #)) (SETF (GETHASH FUNCTION-KEY HOOK-HASH) FUNCTION))) #<CCL::LEXI.. | |
13: (CCL::NX1-FORM :RETURN (BLOCK ADD-FUNCTION-TO-HOOK (LET (HOOK-HASH (ALEXANDRIA.0.DEV:ENSURE-GETHASH HOOK-NAME *AVAILABLE-HOOKS* #)) (SETF (GETHASH FUNCTION-KEY HOOK-HASH) FUNCTION))) #<CCL::LEXICAL-EN.. | |
14: (CCL::NX1-ENV-BODY :RETURN ((BLOCK ADD-FUNCTION-TO-HOOK (LET (HOOK-HASH #) (SETF # FUNCTION)))) #<CCL::LEXICAL-ENVIRONMENT #x302003DBE43D> NIL) | |
15: (CCL::NX1-LAMBDA (HOOK-NAME FUNCTION-KEY FUNCTION) ((BLOCK ADD-FUNCTION-TO-HOOK (LET (HOOK-HASH #) (SETF # FUNCTION)))) ((DECLARE (CCL::GLOBAL-FUNCTION-NAME ADD-FUNCTION-TO-HOOK)))) | |
16: (CCL::NX1-COMPILE-LAMBDA ADD-FUNCTION-TO-HOOK (LAMBDA (HOOK-NAME FUNCTION-KEY FUNCTION) ..) #<CCL::AFUNC #x302003DBE48D> NIL #<CCL::LEXICAL-ENVIRONMENT #x302003DBE55D> #<CCL:COMPILER-POLICY #x3020001B.. | |
17: (CCL::COMPILE-NAMED-FUNCTION (LAMBDA (HOOK-NAME FUNCTION-KEY FUNCTION) (DECLARE (CCL::GLOBAL-FUNCTION-NAME ADD-FUNCTION-TO-HOOK)) (BLOCK ADD-FUNCTION-TO-HOOK (LET (HOOK-HASH #) (SETF # FUNCTION)))) :N.. | |
18: (CCL::CHEAP-EVAL-FUNCTION ADD-FUNCTION-TO-HOOK (LAMBDA (HOOK-NAME FUNCTION-KEY FUNCTION) ..) #<CCL::LEXICAL-ENVIRONMENT #x302003DBE5AD>) | |
19: (CCL::CHEAP-EVAL-IN-ENVIRONMENT (CCL::%DEFUN (CCL:NFUNCTION ADD-FUNCTION-TO-HOOK (LAMBDA (HOOK-NAME FUNCTION-KEY FUNCTION) (DECLARE #) (BLOCK ADD-FUNCTION-TO-HOOK #))) 'NIL) #<CCL::LEXICAL-ENVIRONMENT.. | |
--more-- |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment