Skip to content

Instantly share code, notes, and snippets.

View luismbo's full-sized avatar

Luís Oliveira luismbo

View GitHub Profile
@luismbo
luismbo / redirect.lisp
Created May 27, 2020 12:17
Redirect stdout to REPL
CL-USER> (multiple-value-bind (read write) (sb-unix:unix-pipe)
(let ((read-stream (sb-sys:make-fd-stream read :buffering :line)))
(sb-thread:make-thread (lambda ()
(loop for line = (read-line read-stream nil nil)
while line do (write-line line *standard-output*))))
(sb-posix:dup2 write sb-sys:*stdout*)))
1
CL-USER> (progn (cffi:foreign-funcall "puts" :string "COME TO ME STDOUT!" :int)
(cffi:foreign-funcall "fflush" :pointer (cffi:null-pointer) :int))
0
@luismbo
luismbo / config.el
Last active November 5, 2021 10:56
Minimal, self-contained SLIME installation for reproducing bugs
$ cat minimal-config.el
(setq user-emacs-directory "/tmp/temp-emacs-home")
(ignore-errors (delete-directory user-emacs-directory t))
(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
(package-initialize)
(package-refresh-contents)
(package-install 'slime)
(setq inferior-lisp-program "sbcl")
(slime)