emacs.d/clones/lisp/www.cliki.net/persistence.html
2022-10-07 15:47:14 +02:00

89 lines
No EOL
5.7 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>CLiki: persistence</title>
<link rel="alternate" type="application/atom+xml" title="ATOM feed of edits to current article"
href="https://www.cliki.net/site/feed/article.atom?title=persistence">
<link rel="stylesheet" href="static/css/style.css">
<link rel="stylesheet" href="static/css/colorize.css">
</head>
<body>
<span class="hidden">CLiki - persistence</span>
<div id="content"><div id="content-area"><div id="article-title">persistence</div><div id="article"><ul>
<li>
<a href="B-Tries.html" class="internal">B-Tries</a> -
An implementation of the <a href="data&#32;structure.html" class="category">data structure</a> described in the paper "B-tries for disk-based <a href="string.html" class="category">string</a> management" (<a href="https://people.eng.unimelb.edu.au/jzobel/fulltext/vldbj09.pdf">PDF</a>)
</li>
<li>
<a href="CLDB.html" class="internal">CLDB</a> -
A fast, atomic, consistent, isolated memory based <a href="database.html" class="internal">database</a> in Common Lisp
</li>
<li>
<a href="Common&#32;Lisp&#32;Persistency&#32;Manager.html" class="internal">Common Lisp Persistency Manager</a> -
A software package for <a href="serialization.html" class="category">serialization</a> of Common Lisp data structures, much like Python's pickle facility
</li>
<li>
<a href="CommonLispPrevalence.html" class="internal">CommonLispPrevalence</a> -
A way to let your lisp environment be your <a href="Database.html" class="category">Database</a>
</li>
<li>
<a href="Elephant.html" class="internal">Elephant</a> -
[unmaintained] A portable object <a href="database.html" class="category">database</a> based on Sleepycat (Berkeley DB) or relational databases
</li>
<li>
<a href="journal.html" class="internal">journal</a> -
A library for <a href="logging.html" class="category">logging</a>, tracing, testing and <a href="persistence.html" class="category">persistence</a>
</li>
<li>
<a href="LMDB.html" class="internal">LMDB</a> -
<a href="CFFI.html" class="category">CFFI</a> bindings to <a href="https://en.wikipedia.org/wiki/Lightning_Memory-Mapped_Database">LMDB</a>
</li>
<li>
<a href="PLOB!.html" class="internal">PLOB!</a> -
<a href="PLOB!.html" class="internal">PLOB!</a> (Persistent Lisp OBjects!) is an Object <a href="Database.html" class="category">Database</a>, implementing orthogonal persistency for LISP and CLOS objects
</li>
<li>
<a href="PrevaylerStorage.html" class="internal">PrevaylerStorage</a> -
The storage technique aimed primarily at object oriented environments, that challenges DBMS technology, making heavy use of RAM
</li>
</ul>
<h2>Historical interest: MetaStore (1992)</h2><p>An early implementation of persistent objects in Common Lisp (via the <a href="MOP.html" class="internal">MOP</a>) is detailed in <cite>The Persistent Object System MetaStore</cite> (<a href="https://cl-pdx.com/static/The-Persistent-Object-System-MetaStore.pdf">PDF</a>). This <a href="Portable&#32;CommonLoops.html" class="internal">PCL</a>-based system "uses the <a href="metaprogramming.html" class="internal">metaprogramming</a> facilities of the metaobject protocol to add persistence to the Common Lisp Object System. This approach leaves the semantics of <a href="CLOS.html" class="internal">CLOS</a> unchanged, requires only minimal syntactic changes to existing programs, and needs no compiler support. In the resulting language, programmers can define both classes and slots to be persistent. MetaStore then handles persistence at the metaobject level."</div></div>
<div id="footer" class="buttonbar"><ul><li><a href="persistence.html">Current version</a></li>
<li><a href="https://www.cliki.net/site/history?article=persistence">History</a></li>
<li><a href="https://www.cliki.net/site/backlinks?article=persistence">Backlinks</a></li><li><a href="https://www.cliki.net/site/edit-article?title=persistence&amp;from-revision=3815616413">Edit</a></li><li><a href="https://www.cliki.net/site/edit-article?create=t">Create</a></li></ul></div>
</div>
<div id="header-buttons" class="buttonbar">
<ul>
<li><a href="https://www.cliki.net/">Home</a></li>
<li><a href="https://www.cliki.net/site/recent-changes">Recent Changes</a></li>
<li><a href="CLiki.html">About</a></li>
<li><a href="Text&#32;Formatting.html">Text Formatting</a></li>
<li><a href="https://www.cliki.net/site/tools">Tools</a></li>
</ul>
<div id="search">
<form action="https://www.cliki.net/site/search">
<label for="search_query" class="hidden">Search CLiki</label>
<input type="text" name="query" id="search_query" value="" />
<input type="submit" value="search" />
</form>
</div>
</div>
<div id="pageheader">
<div id="header">
<span id="logo">CLiki</span>
<span id="slogan">the common lisp wiki</span>
<div id="login"><form method="post" action="https://www.cliki.net/site/login">
<label for="login_name" class="hidden">Account name</label>
<input type="text" name="name" id="login_name" class="login_input" />
<label for= "login_password" class="hidden">Password</label>
<input type="password" name="password" id="login_password" class="login_input" />
<input type="submit" name="login" value="login" id="login_submit" /><br />
<div id="register"><a href="https://www.cliki.net/site/register">register</a></div>
<input type="submit" name="reset-pw" value="reset password" id="reset_pw" />
</form>
</div>
</div>
</div>
</body></html>