-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlisp.Rmd
38 lines (27 loc) · 1.44 KB
/
lisp.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
---
title: "Lisp Commands"
output:
html_document:
toc: yes
toc_float: true
---
# From Python to Common Lisp
Dimitri Fontaine 2014 [Why is pgloader faster
?](https://tapoueh.org/blog/2014/05/why-is-pgloader-so-much-faster/)
> "In searching for a modern programming language the best candidate I found was actually Common Lisp."
> "Not only is Common Lisp code compiled to machine code when using most Common
> Lisp Implementations such as SBCL or Clozure Common Lisp; it’s also possible
> to actually benefit from parallel computing and threads in Common Lisp. In
> the pgloader case I’ve been using the lparallel utilities, in particular its
> queuing facility to be able to implement asynchronous IOs where a thread
> reads the source data and preprocess it, fills up a batch at a time in a
> buffer that is then pushed down to the writer thread, that handles the COPY
> protocol and operations. So my current analysis is that the new thread based
> architecture used with a very powerful compiler for the Common Lisp
> high-level language are allowing pgloader to enter a whole new field of data
> loading performances."
# Vim plugins for Lisp
Vim Slime is a vim plugin inspired by the original Superior Lisp Interaction
Mode for Emacs. Going down that rabbit hole, I found a link to this [1990ies
Lisp style guide](www.norvig.com/luv-slides.ps), which has quite a nice way to
formulate decisions frame works for what constitutes good programming.