# Cl/common lisp functions

**URL:** https://org-roam.discourse.group/t/cl-common-lisp-functions/2657
**Category:** Meta
**Created:** [June 16, 2022, 7:47pm UTC](https://org-roam.discourse.group/t/cl-common-lisp-functions/2657 "2022-06-16T19:47:56Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![nrvale0](https://avatars.discourse-cdn.com/v4/letter/n/ec9cab/32.png) [@nrvale0](https://org-roam.discourse.group/u/nrvale0)
#### Post date: [June 16, 2022, 7:47pm UTC](https://org-roam.discourse.group/t/cl-common-lisp-functions/2657/1 "2022-06-16T19:47:56Z")

</div>

I’m finding myself reading elisp code more and more. While looking at the org-roam code I see quite a few cl-\* functions. Just out of curiosity, is there as reason why the cl-\* functions seem to be preferred? Portability? Just a better API?

My guess is the latter though I’m nowhere near comfortable enough with elisp nor with CL to be able to make that case.

---

<div class="post-metadata">

### Author: ![bruce](https://avatars.discourse-cdn.com/v4/letter/b/ccd318/32.png) [@bruce](https://org-roam.discourse.group/u/bruce)
#### Post date: [June 18, 2022, 12:57am UTC](https://org-roam.discourse.group/t/cl-common-lisp-functions/2657/2 "2022-06-18T00:57:09Z")

</div>

Org-roam makes use of `cl-defstruct`, whose value is explained here:

[https://nullprogram.com/blog/2018/02/14/](https://nullprogram.com/blog/2018/02/14/)
