Plaster

common-lisp
(let* ((socket (usocket:socket-connect "google.com" 80)) (stream (usocket:socket-stream socket))) (unwind-protect (drakma:http-request "http://google.com" :stream stream) (usocket:socket-close socket))) There is no applicable method for the generic function #<STANDARD-GENERIC-FUNCTION (COMMON-LISP:SETF FLEXI-STREAMS:FLEXI-STREAM-ELEMENT-TYPE) (2)> when called with arguments (CHARACTER #<SB-SYS:FD-STREAM for "socket 100.93.34.225:39518, peer: 172.217.168.206:80" {1004D57C13}>). [Condition of type SB-PCL::NO-APPLICABLE-METHOD-ERROR] See also: Common Lisp Hyperspec, 7.6.6 [:section] Restarts: 0: [RETRY] Retry calling the generic function. 1: [RETRY] Retry SLIME REPL evaluation request. 2: [*ABORT] Return to SLIME's top level. 3: [ABORT] abort thread (#<THREAD "repl-thread" RUNNING {1001FB83E3}>) Backtrace: 0: ((:METHOD NO-APPLICABLE-METHOD (T)) #<STANDARD-GENERIC-FUNCTION (COMMON-LISP:SETF FLEXI-STREAMS:FLEXI-STREAM-ELEMENT-TYPE) (2)> CHARACTER #<SB-SYS:FD-STREAM for "socket 100.93.34.225:39518, peer: 172... Locals: SB-PCL::ARGS = (CHARACTER #<SB-SYS:FD-STREAM for "socket 100.93.34.225:39518, peer: 172.217.168.206:80" {1004D57C13}>) GENERIC-FUNCTION = #<STANDARD-GENERIC-FUNCTION (COMMON-LISP:SETF FLEXI-STREAMS:FLEXI-STREAM-ELEMENT-TYPE) (2)> 1: (SB-PCL::CALL-NO-APPLICABLE-METHOD #<STANDARD-GENERIC-FUNCTION (COMMON-LISP:SETF FLEXI-STREAMS:FLEXI-STREAM-ELEMENT-TYPE) (2)> (CHARACTER #<SB-SYS:FD-STREAM for "socket 100.93.34.225:39518, peer: 172... Locals: ARGS = (CHARACTER #<SB-SYS:FD-STREAM for "socket 100.93.34.225:39518, peer: 172.217.168.206:80" {1004D57C13}>) GF = #<STANDARD-GENERIC-FUNCTION (COMMON-LISP:SETF FLEXI-STREAMS:FLEXI-STREAM-ELEMENT-TYPE) (2)> 2: (DRAKMA:HTTP-REQUEST #<PURI:URI http://google.com/> :STREAM #<SB-SYS:FD-STREAM for "socket 100.93.34.225:39518, peer: 172.217.168.206:80" {1004D57C13}>) Locals: #:.DEFAULTING-TEMP. = :HTTP/1.1 #:.DEFAULTING-TEMP.#1 = :GET #:.DEFAULTING-TEMP.#2 = NIL #:.DEFAULTING-TEMP.#3 = NIL #:.DEFAULTING-TEMP.#4 = NIL #:.DEFAULTING-TEMP.#5 = NIL #:.DEFAULTING-TEMP.#6 = NIL #:.DEFAULTING-TEMP.#7 = 10 #:.DEFAULTING-TEMP.#8 = NIL #:.DEFAULTING-TEMP.#9 = NIL #:.DEFAULTING-TEMP.#10 = NIL #:.DEFAULTING-TEMP.#11 = NIL #:.DEFAULTING-TEMP.#12 = NIL #:.DEFAULTING-TEMP.#13 = "application/x-www-form-urlencoded" #:.DEFAULTING-TEMP.#14 = NIL #:.DEFAULTING-TEMP.#15 = NIL #:.DEFAULTING-TEMP.#16 = NIL #:.DEFAULTING-TEMP.#17 = NIL #:.DEFAULTING-TEMP.#18 = :DRAKMA #:.DEFAULTING-TEMP.#19 = "*/*" #:.DEFAULTING-TEMP.#20 = NIL #:.DEFAULTING-TEMP.#21 = NIL #:.DEFAULTING-TEMP.#22 = NIL #:.DEFAULTING-TEMP.#23 = NIL #:.DEFAULTING-TEMP.#24 = NIL #:.DEFAULTING-TEMP.#25 = NIL #:.DEFAULTING-TEMP.#26 = 5 #:.DEFAULTING-TEMP.#27 = NIL #:.DEFAULTING-TEMP.#28 = NIL #:.DEFAULTING-TEMP.#29 = T #:.DEFAULTING-TEMP.#30 = NIL #:.DEFAULTING-TEMP.#31 = NIL #:.DEFAULTING-TEMP.#32 = NIL #:.DEFAULTING-TEMP.#33 = NIL #:.DEFAULTING-TEMP.#34 = #<SB-SYS:FD-STREAM for "socket 100.93.34.225:39518, peer: 172.217.168.206:80" {1004D57C13}> #:.DEFAULTING-TEMP.#35 = NIL #:.DEFAULTING-TEMP.#36 = NIL #:.DEFAULTING-TEMP.#37 = 20 ADDITIONAL-HEADERS = NIL ARGS = (:STREAM #<SB-SYS:FD-STREAM for "socket 100.93.34.225:39518, peer: 172.217.168.206:80" {1004D57C13}>) CONTENT = NIL CONTENT-LENGTH = NIL CONTENT-TYPE = "application/x-www-form-urlencoded" DONE = NIL EXTERNAL-FORMAT-IN = :LATIN-1 EXTERNAL-FORMAT-OUT = :LATIN-1 HOST = "google.com" HTTP-STREAM = #<SB-SYS:FD-STREAM for "socket 100.93.34.225:39518, peer: 172.217.168.206:80" {1004D57C13}> METHOD = :GET MUST-CLOSE = NIL #:N-SUPPLIED-2 = 0 #:N-SUPPLIED-3 = NIL #:N-SUPPLIED-4 = 0 #:N-SUPPLIED-5 = 0 #:N-SUPPLIED-6 = 0 #:N-SUPPLIED-7 = 0 PARAMETERS-USED-P = NIL PROXY = NIL RAW-HTTP-STREAM = #<SB-SYS:FD-STREAM for "socket 100.93.34.225:39518, peer: 172.217.168.206:80" {1004D57C13}> UNPARSED-URI = "http://google.com" URI = #<PURI:URI http://google.com/> URL-ENCODER = #<FUNCTION DRAKMA:URL-ENCODE> WANT-STREAM = NIL