I am finally in the process of starting my own business. Today, I received the logo/brand name. Here it is.
I am obviously biased, but I think it looks great.
Primarily technical blog on Lisp, .NET, C# development.
I am finally in the process of starting my own business. Today, I received the logo/brand name. Here it is.
I am obviously biased, but I think it looks great.
Consider the following snippets of code:
(let ((probed-path)
(not-found t))
(dolist (registry-expression asdf:*central-registry*)
(when not-found
(setf probed-path (eval registry-expression)))
(when (probe-file (merge-pathnames "asd-library.asd" probed-path))
(setf not-found nil)))
probed-path)
(first (remove-if #'null
(mapcar #'(lambda (x)
(when (probe-file
(merge-pathnames "asd-library.asd" (eval x)))
(eval x)))
asdf:*central-registry*)))
Both codes perform the same task. The first one is more like a procedural/imperative code in style than the more functional second one.
By the way, they return the path for a registered library. It is not very useful since ADSF provides the same thing easily with a single function call:
(asdf:system-relative-pathname :asd-library "")
But I like to get back to it as a reference of lisp styles.
The REPL moved to a contrib. Instead of (slime-setup), place (slime-setup '(slime-fancy slime-asdf)) into your ~/.emacs.
So I ended up with a different .emacs file then before:
(add-to-list 'load-path "your-path-to-slime") (require 'slime) (add-hook 'lisp-mode-hook (lambda () (slime-mode t))) (add-hook 'inferior-lisp-mode-hook (lambda () (inferior-slime-mode t))) (setq inferior-lisp-program "sbcl") (slime-setup '(slime-fancy slime-asdf))
Next post I will tell my journey to get a web site running on the good old hunchentoot.