Next: Introduction, Previous: (dir), Up: (dir) [Contents][Index]
This is the cl-crc64 Reference Manual, version 0.1, generated automatically by Declt version 3.0 "Montgomery Scott" on Tue Dec 22 12:11:15 2020 GMT+0.
• Introduction | What cl-crc64 is all about | |
• Systems | The systems documentation | |
• Files | The files documentation | |
• Packages | The packages documentation | |
• Definitions | The symbols documentation | |
• Indexes | Concepts, functions, variables and data types |
cl-crc64 implements 64 bit cyclic redundancy checks in Common Lisp.
A cyclic redundancy check (CRC) is a type of hash function that produces a checksum (a small, fixed number of bits) against a block of data, such as a packet of network traffic or a block of a computer file. The checksum is used to detect errors after transmission or storage.
CRCs can also act as a kind of electronic fingerprint for identifying blocks of data. SWISS-PROT + TREMBL use a 64-bit Cyclic Redundancy Check for the amino acid sequences. My interest was in using CRC64 to index data in a semantic web triple store.
This implementation is influenced heavily by Python code by Gian Paolo Ciceri and crc.lisp by R. Matthew Emerson. My thanks to both these authors.
For a more thorough discussion of CRC see W. H. Press, S. A.Teukolsky, W. T. Vetterling, and B. P. Flannery, "Numerical recipes in C", 2nd ed., Cambridge University Press. Pages 896ff.
The code comes with BSD-style license so you can basically do whatever you want with it.
cl-crc64 is ASDF installable, but assuming that you have QuickLisp installed:
Rob-Blackwells-MacBook:cl-crc64 reb$ sbcl
This is SBCL 1.0.29, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
* (ql:quickload "cl-crc64")
To load "cl-crc64":
Load 1 ASDF system:
cl-crc64
; Loading "cl-crc64"
[package cl-crc64].
("cl-crc64")
* (use-package :cl-crc64)
T
* (initialise-crc64 +polynomial+)
NIL
* (format nil "~X" (crc64-sequence "IHATEMATH"))
"E3DCADD69B01ADD1"
*
WARNING: This is old code that I've pulled out, repackaged and open sourced. It was used as part of a demo some years back, but you probably want to test it thoroughly for new projects.
Rob Blackwell
October 2010
Next: Files, Previous: Introduction, Up: Top [Contents][Index]
The main system appears first, followed by any subsystem dependency.
• The cl-crc64 system |
Rob Blackwell <rob.blackwell@aws.net>
BSD
Computes 64-bit cyclic redundancy checks
0.1
cl-crc64.asd (file)
crc64.lisp (file)
Files are sorted by type and then listed depth-first from the systems components trees.
• Lisp files |
• The cl-crc64.asd file | ||
• The cl-crc64/crc64.lisp file |
Next: The cl-crc64/crc64․lisp file, Previous: Lisp files, Up: Lisp files [Contents][Index]
cl-crc64.asd
cl-crc64 (system)
Previous: The cl-crc64․asd file, Up: Lisp files [Contents][Index]
cl-crc64 (system)
crc64.lisp
Next: Definitions, Previous: Files, Up: Top [Contents][Index]
Packages are listed by definition order.
• The cl-crc64-asd package | ||
• The cl-crc64 package |
Next: The cl-crc64 package, Previous: Packages, Up: Packages [Contents][Index]
cl-crc64.asd
Previous: The cl-crc64-asd package, Up: Packages [Contents][Index]
crc64.lisp (file)
common-lisp
Definitions are sorted by export status, category, package, and then by lexicographic order.
• Exported definitions | ||
• Internal definitions |
Next: Internal definitions, Previous: Definitions, Up: Definitions [Contents][Index]
• Exported constants | ||
• Exported functions |
Next: Exported functions, Previous: Exported definitions, Up: Exported definitions [Contents][Index]
crc64.lisp (file)
crc64.lisp (file)
Previous: Exported constants, Up: Exported definitions [Contents][Index]
Calculates the CRC64 of the file specified by pathname.
crc64.lisp (file)
Calculates the CRC64 from sequence, which is either a simple-string or a simple-array with element-type (unsigned-byte 8)
crc64.lisp (file)
Calculates the CRC64 on the given stream.
crc64.lisp (file)
Computes lookup tables of CRC values for byte values 0 thru 255
crc64.lisp (file)
Previous: Exported definitions, Up: Definitions [Contents][Index]
• Internal special variables |
Previous: Internal definitions, Up: Internal definitions [Contents][Index]
crc64.lisp (file)
crc64.lisp (file)
Previous: Definitions, Up: Top [Contents][Index]
• Concept index | ||
• Function index | ||
• Variable index | ||
• Data type index |
Next: Function index, Previous: Indexes, Up: Indexes [Contents][Index]
Jump to: | C F L |
---|
Jump to: | C F L |
---|
Next: Variable index, Previous: Concept index, Up: Indexes [Contents][Index]
Jump to: | C F I |
---|
Jump to: | C F I |
---|
Next: Data type index, Previous: Function index, Up: Indexes [Contents][Index]
Jump to: | *
+
C S |
---|
Jump to: | *
+
C S |
---|
Previous: Variable index, Up: Indexes [Contents][Index]
Jump to: | C P S |
---|
Jump to: | C P S |
---|